文件的权限

ls -al  ----->隐藏文件会以 .号开头

ls -ld :显示目录自身属性

ls -i 显示文件的索引号----每个文件都有一个对应的号码

ls -r 逆序显示

dr-xr-xr-x.  2 root root       12288 Nov  2  2012 .

lrwxrwxrwx.  1 root root          17 Oct 20  2012 accton -> ../../sbin/accton

文件类型

与权限

链接占用的

节点(i-node)

文件所有者

文件所有者

的用户组

文件大小

时间戳/最近修改时间

文件名称

dr-xr-xr-x.

2

root

root

12288

Nov  2  2012

.

lrwxrwxrwx.

1

root

root

17

Oct 20

../../sbin/accton

(1)其中第1位表示文件类型,有以下几种:

-: 表示普通文件

d: 目录

b: 块特殊文件

c: 字符特殊文件

l: 符号链接文件

p: 命名管道文件FIFO

s: 套接字文件

(2) r:表示可读; w:表示可写;x:表示可执行;

( 3 )  时间戳:最近一次被修改的时间

访问时间、修改时间、改变时间(元数据)

stat   文件/文件夹名----查看文件及文件夹状态(最近一次访问、修改、改变时间)

touch -m -t  年 月 日  文件名  (把文件的修改时间改为自己定义时间)

"."  代表当前目录

".."  代表当前目录的上一级目录

cd -  在前一个目录和当前目录进行切换

type:显示指定命令属于那种类型, ...a shell builtir 这个命令为内部,显示路径为外部。

环境变量:定义用户使用的环境!“命名的内存空间,name=jre-->在内存中划出一块空间,起名为name.而空间中放的数据叫jre,放数据的过程叫“变量赋值”。变量--->把存放的数据进行更改”。

printenv-----显示环境变量

个字符

2.不能使用斜线当文件名(斜线:路径分隔符、目录名、换行符)

3.严格区分大小写

tree  文件夹名  ----查看目录树

file   文件名    ----文件内容的类型

id

功能说明:显示用户的ID,以及所属群组的ID。

补充说明:id会显示用户以及所属群组的实际与有效ID。若两个ID相同,则仅显示实际ID。若仅指定用户名称,则显示目前用户的ID。

参  数:

-g或--group  显示用户所属群组的ID。

-G或--groups  显示用户所属附加群组的ID。

-n或--name  显示用户,所属群组或附加群组的名称。

-r或--real  显示实际ID。

-u或--user  显示用户ID。

管理文件类型命令

段。cut -f  1,3:第一和第三段.

1-3:第一到第三段 .

位,第一位是特殊权限

转换表

八进制     二进制

0          000        - - -:无权限

1          001        - - x:执行

2          010        - w -:写

3          011        - w x:写、执行

4          100        r - - :只读

5          101        r - x :读和执行

6          110        r w - :读写

7          111        r w x :读写执行

755:rwxr-xr-x

r w - r - x - - r:651

用户:UID,/etc/passwd  用户名解析成UID号的解析库,也可以叫用户信息库。

用户密码不在信息库中,在/etc/shadow中。

组:GID,  /etc/group   组解析成GID号的解析库,

组的密码不在信息库中,在/etc/gshadow中。

用户分类(ID号永远为0)、普通用户(UID号1-65535。系统用户1-499,一般用户500-60000)

注:在企业的红帽系统中,用32位2进制表示ID号,能达到4亿多个!

/etc/passwd :

用户名  密码(x密码占用符)  用户id    基本组id      用户注释信息    家目录    用户默认shell

/etc/shells : 当前系统支持的所有shell类型。

/etc/shadow  :

登录名   加密密码(!!为锁定,不予许登录)   密码修改时间     密码最短使用时间    密码最长使用时间    警告时间

宽限期    有效期    保留字段

用户管理命令:

useradd :添加用户  userdel :删除用户

修改密码:passwd +用户名

id  -u :取得用户UID号

修改文件及文件夹属主属组:修改属主(chown +用户名+文件名)、修改属组(chgrp+组名+文件名)。

修改文件及文件夹权限:

chmod: 修改文件的权限,  -R递归

u(用户)、g(组)、o(其他)、a(全部)

例:chmod  u/g/a/o  -/+  r/w/x   文件名

管理员与普通用户创建文件的权限不相同?

umask:反掩码,通过这个命令可以查看用户的反掩码,管理员和用户umask不一样!

通常创建文件和文件夹时:

创建文件:六六六 - umask

创建文件夹:777 - umask

文件默认一定不能有执行权限,若算出结果有执行,加一!!!

站在用户登录的角度来说,shell的类型:

登陆式shell

正常输入账号密码登录

su  -  登录

非登陆式shell

su    用户名

图形终端下打开的窗口

自动执行的shell脚本

bash的配置文件:

全局配置

/etc/profile、 /etc/profile.d/*.sh、 /etc/bashrc

个人配置

~/ .bash_profile 、  ~/.bash_rc

profile类的文件:

设定环境变量。作用范围越小,越有效。,也就是sticky权限。

l/o重定向管理

l/o重定向:改变数据的输入输出来源(包括错误输出)

>:输出重定向(覆盖输出):执行两次数据输出到同一个文件中,最后一次输出会覆盖第一次的数据。

>>:追加输出,执行两次数据输出到同一个文件中,不会覆盖,会在原有数据后面追加!

小技巧:使用set  -C (开启),set  +C(关闭)。禁止对已存在的文件使用覆盖重定向。

若想覆盖,又不想关闭这个功能,只需在>|(在大于号下加‘|’)----强制覆盖。

2>:重定向错误输出

2>>:追加方式重定向错误输出

ls /etc  > /jj  2> /jj2 :若正确输出到jj文件中,若错误输出到jj2文件中!

&>:重定向标准输出或错误输出至同一文件中。

&>>:追加方式

<:输入重定向。

<<:在此处生成文档。

cat  >> /jj  << END  :通常用于写脚本。把<<END中所写的内容添加到/jj!

END结束符:写完内容后,最后把END写出来,这个文档结束。

管道

命令1 | 命令2 | 命令3 |

命令1的结果是命令2的输入,命令2的结果是命令3的输入,可以是多重的!

管道:前一个命令的输出,作为后一个命令的输入!

tee :可以理解为一个输入,两个输出,从标准输入读取数据,并且发送至标准输出和文件!

能实现将一个数据同时输出到屏幕和文件中

查找文件类型命令

locate :(一般不用)在全系统查找文件的命令。非精确匹配,查找是根据全系统文件数据库进行的。速度快!

updatedb: 手动生成数据库,但是速度非常慢

find :实时查找、精确、遍历指定目录中的所有文件完成查找。---支持多项查找。

格式: find  查找路径  查找标准   文件名   查找到以后的处理动作

查找路径:默认是在当前目录

超找标准:默认为指定路径下的所有文件

处理动作:默认显示到屏幕上

匹配标准:

- ls :显示文件大小

- name 文件名 :对文件名做精确匹配

支持文件名通配:

* 任意长度的任意字符

?单个任意字符

- iname 文件名 :文件名匹配时不区分大小写

- regex  :基于正则表达式模式来进行查找

- user  用户名 :根据文件的属主来查找文件

- group  组名  :根据文件的属组来查找文件

- uid  UID号  :若一个文件的属主用户删除之后,文件的属主会变成原先删除用户的ID号!

- gid  GID号  :根据GID号查找

- nouser :查找没有属主的文件

- nogroup: 查找没有属组的文件

- type :根据文件类型来查找

文件类型:

f: 表示普通文件

d: 目录

b: 块特殊文件

c: 字符特殊文件

l: 符号链接文件

p: 命名管道文件FIFO

s: 套接字文件

- size : 根据文件大小来查找文件   单位为(K/M/G)

+10k/-10k/10k : 大于10k/小于10k/精确10k

组合条件查找:

-a :与条件,两个条件同时满足

-o :或条件

-not :非条件

实验:  查找tmp目录下没有属主和文件类型为目录的文件,详细显示

find  /tmp  -nouser  -a  -type d  -ls

实验:  查找tmp目录下,属主不是user1 还不是user2的文件

find   /tmp   -not -user  user1  -a  -not -user use2

find   /tmp   -not  \(-user  user1  -a  -not -user use2\)

根据时间戳查找:

-mtime : 最近一次文件的修改时间

-ctime  : 最近一次文件的改变时间

-atime : 最近一次文件的访问时间

+ :几天之内访问过

- :至少有几天没有访问过

没有添加+/-号后面直接跟数字,说明刚好在那一天访问过。

Linux操作系统之用户权限,重定向,文件管理的更多相关文章

  1. linux 中更改用户权限和用户组的命令chmod,chgrp实例

    linux 中更改用户权限和用户组的命令实例; 增加权限给当前用户 chmod +wx filename chmod -R 777 /upload 用户组 chgrp -R foldname zdz ...

  2. LinuX操作系统基础------> 用户管理,grep搜索

    用户管理 用户组管理 字符管理和grep搜索 1.用户管理: LinuX是一个多用户,多任务的操作系统,可以让多个用户使用,这个账号可以帮助对用户进行追踪,必须在初始化的时候设置好自己的密码 1-1配 ...

  3. linux如何设置用户权限

    linux与用户权限设置: 1.添加用户 首先用adduser命令添加一个普通用户,命令如下: #adduser tommy //添加一个名为tommy的用户 #passwd tommy //修改密码 ...

  4. 【Linux】sudo用户权限管理

    权力下放 一.权力分配- sudo Sudo是Unix/Linux平台上的一个非常有用的工具,它允许系统管理员分配给普通用户一些合理的"权力",让 他们执行一些只有超级用户或其他特 ...

  5. Linux下的用户权限

    用户权限: drwxr-xr-x root root - : boot #权限位 硬连接数 所属用户 所属组 大小 最后修改时间 文件/目录# r w x 4 2 1 用户权限位分为3段,分别对应US ...

  6. [Linux系统] (2)用户权限管理

    示例---普通用户之间的文件共享:假设公司有2个项目组,共享同一台服务器. 1.为两个项目组各创建一个用户: useradd leo01 useradd leo02 2.为两个新用户设置密码: pas ...

  7. Linux培训教程 linux下修改用户权限的方法

    一般我们日常碰到要修改用户权限的,往往是要么修改一下用户的gorupid,通过上面命令可以改;要么是把普通用户改成具有超级权限的用户,这个一般自己不能直接改,只能是root或有root权限的用户才能帮 ...

  8. linux 基础 文件系统 用户权限

    描述Linux系统的启动过程? 1.开机自检 BIOS 2.MBR引导 3.GRUB菜单 4.加载内核 5.运行init进程 6.从/etc/inittab读取运行级别 7.根据/etc/rc.sys ...

  9. 【linux 06】 linux中的用户权限、文件权限与目录权限

    1.用户及用户组的概念: 1.文件所有者 2.用户组 3.用户 以root登录Linux之后,执行ls -al,会看到有关文件属性的信息 -rw-r--r--,第1个字符代表这个文件是“目录,文件或链 ...

随机推荐

  1. react-native-cli运行项目及打包apk失败的解决过程

    刚开始学习react native,第一步自然是搭建好开发环境,node及jdk本身就有,Python2.Android studio以及Android sdk的安装倒是没什么大问题,按照官网的教程做 ...

  2. C++ 派生类覆盖重载基类函数

    派生类希望基类重载函数可见,情况有三种: a)派生类中覆盖某个版本,则某个版本可见,全部都覆盖重写,则全部版本可见. b)派生类中一个也不覆盖,则全部基类版本可见. c)派生类需要添加新的重载版本,同 ...

  3. k8s安装dashboard

       1.Kubernetes Dashboard 是 k8s集群的⼀个 WEB UI管理⼯具,代码托管在 github 上,地址: https://github.com/kubernetes/das ...

  4. 利用docker实现私有镜像仓库

    利用docker实现私有镜像仓库 在linux服务器上安装了docker过后,可以拉取docker镜像仓库: docker pull registry 再执行命令让镜像run起来: docker ru ...

  5. linux系统ubuntu中在命令行如何打开图形界面的文件夹

    用linux查看文件列表之类的受到命令行限制,还是不太方便的.在文件夹中打开的话,切换路径又没有linux终端快,于是,需要在命令行窗口中打开文件夹.如何做呢? 来到终端命令行中,cd切换你的路径,使 ...

  6. flowable ui 界面请假流程操作实例

    如题,网上的教程多是代码居多,UI界面操作实例那更是一页难求,楼主分享下几天来的入坑经历,希望有需要了解,但是不知道去哪里了解的小伙伴,看完我的文章后能有所启发,文章有不足之处还请指正,若有相关问题请 ...

  7. 【转】Selenium 报错:Element is not clickable at point的解决办法

    天一同学在写Selenium Java脚本时遇到一个问题,登录进入系统之后,要点击左侧的一个菜单,但是执行到该语句时报下面的错误: Firefox中报错如下:org.openqa.selenium.E ...

  8. golang学习笔记--包导入及go 常用命令及参数

    包导入:包导入路劲即代码包在工作区的src目录下的相对路径. 同一个源码文件中导入的多个代码包的最后一个元素不能重复,否则引起编译错误,如果只导入不使用,同样会引起编译错误 若想导入最后一个元素名相同 ...

  9. intent 参数的规范

    对于采用 intent 参数的 Activity Manager 命令,您可以使用以下选项指定 intent: -a action 指定 intent 操作,如“android.intent.acti ...

  10. Python基础6

    <零基础入门学习python>,小甲鱼. P33. 用for循环和range() 配合求数列和,对比while循环,简洁很多