不 断 前 行,方 可 不 被 淘 汰
9、head tail more less 查看内容
这四个命令使用和cat 类似,只是显示方式的区别。
head 从文件的第一行开始显示,默认显示10行,使用选项-n 可以指定显示行数: [root@centos7 ~]# head -n 3 /etc/group root:x:0: bin:x:1: daemon:x:2:
显示文件/etc/group的前三行。 /etc/group中每行被: 分隔成4列: 1) 组名2) 口令,linux中一般无组口令,此处一般为x或*3) 组ID(GID)4) 组内成员列表,多个用逗号分隔。如果字段为空表示用户组为GID的用户名。
tail 默认输出文件的倒数10行内容,也可以用选项-n 指定行数:
[root@centos7 temp]# tail -n 4 /etc/shadow postfix:!!:16814:::::: sshd:!!:16814:::::: tcpdump:!!:16994:::::: learner:$6$.U5pPYhu$h9TnYR9L4dbJY6b6VgnAQBG5qEg6s5fyJpxZVrAipHeeFhHAiHk6gjWa/xOfvWx.CzM2fvk685OEUc.ZdBYiC0:17095:0:99999:7:::
显示文件/etc/shadow的后4行。 /etc/shadow中保存的是账号密码等信息,每行被: 分隔成9列: 1) 用户名2) 加密的密码3) 上次修改口令的时间;这个时间是从1970年01月01日算起到最近一次修改口令的时间间隔(天数)。4) 两次修改口令间隔最少的天数;如果这个字段的值为空,账号永久可用;5) 两次修改口令间隔最多的天数;如果这个字段的值为空,账号永久可用;6) 提前多少天警告用户口令将过期;如果这个字段的值为空,账号永久可用;7) 在口令过期之后多少天禁用此用户;如果这个字段的值为空,账号永久可用;8) 用户过期日期;此字段指定了用户作废的天数(从1970年的1月1日开始的天数),如果这个字段的值为空,账号永久可用;9) 保留字段,目前为空,以备将来发展之用;
/etc/shadow中的记录行与/etc/passwd中的一一对应,它由pwconv命令根据/etc/passwd中的数据自动产生。 另外命令tail 还有个常用选项-f ,作用是随着文件内容的增加而输出,默认输出间隔为1s。
more 和less 两个命令的作用都是分页显示文件内容,区别是more不允许往回翻,只能用enter键和空格键分别显示下一行和下一页(类似于man命令),less允许往回翻,向上箭头和pageup按键也是可用的。读者可自行实验这两个命令,这里不再举例。 10、groupadd 创建用户组groupadd [OPTION] group
选项'-g'可以为新创建用户组指定GID。如创建一个新用户组group1并指定其GID为1005,然后再新创建一个用户tom,使他的UID为1002,GID为1000,登录shell为/bin/sh: [root@centos7 ~]# groupadd -g 1005 group1 [root@centos7 ~]# useradd -u 1002 -g 1000 -s /bin/sh tom [root@centos7 ~]# tail -n 1 /etc/passwd tom:x:1002:1000::/home/tom:/bin/sh [root@centos7 ~]# tail -n 1 /etc/group group1:x:1005:
这里useradd命令的选项-u 、-g 和-s 分别指定新用户的uid、gid和登录shell。 11、chmod 改变文件权限chmod [OPTION]... MODE[,MODE]... FILE... chmod [OPTION]... OCTAL-MODE FILE...
在看此命令用法之前,我们先来解释一下命令ls 的选项-l 的输出: [root@centos7 temp]# ls -l 总用量 0 drwxr-xr-x 3 root root 29 10月 21 20:34 dir1 drwxr-xr-x 2 root root 6 10月 21 20:33 dir2 -rw-r--r-- 1 root root 0 10月 21 20:34 file1
这部分输出被分为7个部分: 1) -rw-r--r-- 10个字符中第一个字符-代表文件类型,linux中文件共有7种类型,分别表示如下: d:代表文件是一个目录 l:符号链接 s:套接字文件 b:块设备文件 c:字符设备文件 p:命名管道文件 -:普通文件,或者说除上述文件外的其他文件剩下的9个字符每三个一组,表示这个文件的权限,linux中文件权限用二进制的000-111(一位八进制数)来分别代表文件的权限,其中: r(read):读权限(如果是文件表示读取文件内容,如果是目录表示浏览目录)。二进制第一位置1即100,十进制为数字4。 w(write):写权限(对文件而言,具有新增、修改文件内容的权限,对目录来说,具有删除、移动目录内文件的权限。)。二进制第二位置1即010,十进制为数字2。 x(execute):执行权(对文件而言,具有执行文件的权限;对目录来说具有进入该目录的权限。)。二进制第三位置1即001,十进制为数字1。 -(无权限):当没有上述权限时。二进制表示为000。这样本例中最后一行文件file1权限:前三个字符`rw-`表示文件的所有者(`owner`)对文件具有读和写的权限,十进制数字为4+2=6。中间三个字符`r--`表示文件的所属组(`group`)对文件具有读权限,十进制数字为4。最后三个字符`r--`表示系统中其他用户(`others`)对文件具有读权限,十进制数字为4。这样文件的权限可以用十进制数字`644`来表示。对于目录dir1来说:前三个字符`rwx`表示目录所有者(`owner`)对其具有读、写和执行的权限,十进制表示为4+2+1=7。中间三个字符`r-x`表示目录的所属组(`group`)对其具有读和执行的权限,十进制表示为4+1=5。后三个字符`r-x`表示系统中其他用户(`others`)对其具有读和执行的权限,十进制表示为4+1=5。这个目录权限用十进制表示即为`755`,注意文件和目录相同权限之间的区别。 2) 权限后面的数字代表文件的硬链接数 3) root文件的所有者,有时表示为用户的UID。 4) root文件的所属组,有时表示为用户组的GID。 5) 文件大小,以字节`Byte`为单位 。6) 10月 21 表示文件内容最近一次被修改的时间。 7) 最后一列为文件名。
如给文件file1的用户组增加执行权限: [root@centos7 temp]# chmod g+x file1 [root@centos7 temp]# ls -l file1 -rw-r-xr-- 1 root root 0 10月 21 20:34 file1
这里g+x 表示给group 增加执行x 的权限。 如给文件file1的其他人减少读权限: [root@centos7 temp]# chmod o-r file1 [root@centos7 temp]# ls -l file1 -rw-r-x--- 1 root root 0 10月 21 20:34 file1
这里o-r 表示给others 减少读r 权限。 如给文件file1的任何用户都设置成rw-权限: [root@centos7 temp]# chmod a=rw file1 [root@centos7 temp]# ls -l file1 -rw-rw-rw- 1 root root 0 10月 21 20:34 file1
这里a=rw 表示给所有人all 设置成rw- 权限。 或者用十进制表示法直接指定文件的权限: [root@centos7 temp]# chmod 644 file1 [root@centos7 temp]# ls -l file1 -rw-r--r-- 1 root root 0 10月 21 20:34 file1
如给目录dir1和目录内的所有目录和文件权限都设置成777: [root@centos7 temp]# chmod 777 -R dir1 [root@centos7 temp]# ls -l 总用量 0 drwxrwxrwx 3 root root 29 10月 21 20:34 dir1 drwxr-xr-x 2 root root 6 10月 21 20:33 dir2 -rw-r--r-- 1 root root 0 10月 21 20:34 file1
选项-R 作用是递归地改变目标权限。 另外如目录/tmp 的权限: [root@centos7 tmp]# ls -l / ....drwxrwxrwt. 7 root root 88 10月 22 21:14 tmp....
我们看到权限最后一位是t ,这里代表粘滞位(sticky ),它的作用是给目录特殊的权限:使用户不能删除该目录下不属于此用户的文件。
t 后面的. 表示该文件被selinux的安全上下文保护。 如可执行文件/bin/su 的权限: [root@centos7 bin]# ls -l /bin/su -rwsr-xr-x. 1 root root 32072 11月 20 2015 /bin/su
所有者的权限rws ,这里的s 代表suid ,如果在用户组位置的话代表sgid ,作用是给文件特殊的权限:当用户执行此文件的时候,把他当成是文件的所有者来执行。 这些特殊用途的的权限对普通用户来说知道即可。 12、lsattr 列出隐藏权限lsattr [option] [files...]
如: [root@centos7 temp]# lsattr ---------------- ./dir1 ---------------- ./dir2 ---------------- ./file1
列出了文件的隐藏权限位,共有16位(由于隐藏权限是文件系统相关的,不同的文件系统对于文件的隐藏权限的设定不一定相同)。 13、chattr 给文件设置隐藏权限chattr [+-=] [mode] files...
如给文件file1增加隐藏权限a: [root@centos7 temp]# chattr +a file1 [root@centos7 temp]# lsattr file1 -----a---------- file1
这里的a 权限表示:这个文件将只能添加数据,而不能删除也不能修改数据,只有root才能配置这个属性。 给文件file2增加隐藏属性i: [root@centos7 temp]# chattr +i file2 [root@centos7 temp]# lsattr file2 ----i----------- file2
这些隐藏权限都不常用,通常知道这两个就可以了。
|