随便记录一下Linux常用的文件和文本管理命令。
一、基本目录、文件和文本管理工具
1、切换目录至 /etc/rc.d/init.d/。
# cd /etc/rc.d/init.d/
2、列出/etc/rc.d/init.d/目录下的所有内容,常见参数[-lad]分别是显示详细格式列表、显示所有内容、仅仅显示目录格式内容。
# ls -a /etc/rc.d/init.d
3、在/tmp/下创建tmp1/tmp2/文件夹,权限为777,常见参数[-vpm]分别是显示创建过程、顺带创建文件夹的父级、设置文件夹的权限。
# mkdir -p -m 777 /tmp/tmp1/tmp2
4、以树目录的形式展开/etc/rc.d/init.d/,常见参数[-dL]分别表示只显示目录文件、显示所设置的深度。
# tree -d /etc/rc.d/init.d/
5、查看/etc/fstab的文件内容。
# cat /etc/fstab
6、分页查看/etc/fstab的文件内容,less与more功能基本相同,不同在于less允许用户可以向前和向后翻阅。
# less /etc/fstab
7、查看/etc/fstab文件中的前5行,tail与head功能相近,tail向后数起,常见参数[-cn]分别表示显示前面几个字节、显示前面几行。less有一个[-f]参数表示跟踪文件新加的内容。
# head -n 5 /etc/fstab
8、查看文件时间信息。
# stat /etc/fstab
9、创建文件/etc/fstab.txt,常见参数[-amct]用法也是如下。a:atime访问的时间,m:mtime修改的时间,c:ctime元数据修改的时间。
# touch /etc/fstab.txt
# touch -a -t 201710231203.30 /etc/fstab.txt //修改文件的访问时间为2017年10月23日12时03分30秒
# touch -c /etc/fstab.txt //不创建文件,只是修改次文件的ctime
10、将/etc/fstab复制到/tmp/下。
# cp /etc/fstab /tmp
11、将/etc/fstab.txt改名为fstab.sh。
# mv /etc/fstab.txt /etc/fstab.sh
12、将/etc/fstab移动到/tmp/下。
# mv /etc/fstab.txt /tmp/
13、强制删除/etc/fstab.txt。
# rm -rf /etc/fstab.txt
14、显示/etc/fstab的行数是多少,常用参数是[-lcw]分别表示显示文件的行数、显示文件的字节数、显示文件的单词数。
# wc -l /etc/fstab
15、以:为分割点,打印出1-7列并以空格作为间隔。
# cut -d: -f1,7 --output-delimiter=" " /etc/fstab
16、以:作为分隔符,并以分隔符的第2个以数值大小排序。
sort -t : -k 2 -n /etc/fstab
17、去除/etc/fstab里面的重复的行数,常见参数[-cdu]分别表示显示每行重复的次数、仅显示重复过的行、仅显示只出现过一次的行。
# uniq /etc/fstab
18、将/tmp/目录下所有以.ro结尾的改为.ro.bak
# rename .ro .ro.bak *
19、查找/etc目录下的文件。
# find /etc/ -type f 查找/etc/目录下的文件,参数还有[ldb]分别表示链接、目录、块设备
# find /etc/ -name "passwd" 查找/etc/目录下文件名文passwd的文件
# find /etc/ -user "root" 查找/etc/目录下属主为root的文件
# find /etc/ -nouser 查找/etc/目录下没有属主的文件
# find /etc/ -size 3k 查找/etc/目录下文件大小为2k以上,3k以下的文件
二、基本的用户和权限管理工具
用户和组的相关配置文件:
/etc/passwd 记录用户及其属性的相关信息
/etc/group 记录组及其属性的相关信息
/etc/ shadow 记录用户密码及其属性的相关信息
里面的格式分别是name:password:UID:GID:GECOS(详细信息);directory(主目录);shell
/etx/gshadow 记录组密码及其属性的相关信息
基本格式group_name:password:GID:USER_LIST
20、添加xiaoming用户。
# useradd xiaoming
-u 100 //设定UID
-g 200 //设定GID
-c " " //设定该用户的详细信息
-d DIR //指定该用户的家目录
-s SHELL //指定特定的shell
-G GROUP //设定用户的附加组
-r //指定为管理员账号
21、增加xiaoming用户密码的两种方式。
# passwd xiaoming
# echo 123456789 | passwd --stdin xiaoming
22、删除xiaoming用户与其家目录。
# userdel -r xiaoming
23、更改已有账号xiaowei的相关信息。
# usermod xiaowei
-u UID //修改UID
-l NAME //修改其用户名
-a -G GROUPNAME //将xiaowei附加到其他组
-m -d DIR //修改其家目录
24、添加一个myhome的组。
# groupadd myhome
-g GNUMBER //设定其组号
-r //设置为系统组
25、设定myhome的组密码。
# gpasswd myhome
-a xiaowei //将xiaowei添加到myhome组中
-d xiaowei //将xiaowei从myhome组删除
-A xiaowei //将xiaowei设置为有此组的管理权限
26、删除myhome组。
# groupdel myhome
27、更改现有组myhome的相关信息。
# groupmod myhome
-n myhouse //将组名改为myhouse
-g 222 //将组的GID改为222
三、基本的文件权限管理工具
28、修改/tmp/fstab.sh的权限为764,常用参数[-R]表示递归修改。
# chmod 664 /tmp/fstab.sh
# chmod u+x /tmp/fstab.sh
29、修改/tmp/fstab.sh的属主和属组参数[-R]表示递归修改。
# chown xiaoming:myhome /tmp/fstab.sh
# chgrp myhome /tmp/fstab.sh
(一)、对SUID的理解:
一个没有SUI权限的文件:进程运行的安全上下文,文件和进程也有属组和属主。任何一个文件能否成为进程取决于发起者对这个文件有没有执行权限。启动为进程之后,进程的属主为发起者,进程的属组为发起者的组。进程的访问权限取决于进程的发起者。
一个拥有SUID权限的文件:进程运行的安全上下文,文件和进程也有属组和属主。任何一个文件能否成为进程取决于发起者对这个文件有没有执行权限。启动为进程之后,进程的属主为文件的拥有者,进程的属组为发起者的组。进程的访问权限就不是取决于进程的发起者。
# chmod u+s /etc/passwd
(二)、对GUID的理解
1分别用xiaoming和xiaowei两个用户在/tmp/test/文件夹下分别创建ming.txt和wei.txt,此时这两个文件的组是该用户的基本组。
2在root用户下创建一个a目录,并且给这个a目录增加SGID权限,然后分别切换至xiaoming和xiaowei分别创建b和c目录,此时发现b和c目录的组为root,而不是用户的基本组了。
# chmod g+s /tmp/tmp1
(三)、对STICKY的理解
一个设置了STICKY权限的目录,则在改目录下每一个用户只能删除属主是自己的文件。
# chmod o+t /tmp/tmp1
以上就是归纳了一些超级实用的常用文件和文本管理工具,如有错误,请指正。