Linux文件基本命令
1. touch
创建指定文件
2.mkdir
创建目录
3. rm
删除指定文件或者目录
4. rm -r
删除目录(可以删除非空目录)
5. rm -f
强制删除(不询问,直接删除)
6. rmdir
删除空目录
7. ls
列出指定目录或者文件(不包括隐藏文件)
8. ls -a
列出当前目录下所有文件和目录(包括隐藏文件)
9. ls -l
列出当前目录下除隐藏文件外的所有文件和目录的详细信息
10. ls+文件名
查看文件详细信息
1.1 ls+目录名
列出指定目录下的文件和目录
12. cd
变更用户所在目录
13. cp
复制 格式cp[选项] [来源文件] [目的文件]
14. cp -r
复制目录必须加-r,否则不能复制
15. cp -i
安全选项,遇到已存在的文件,会询问是否覆盖
16. mv
移动,格式[选项][源文件或目录][目标文件或目录]
移动文件
移动目录
重命名
17. cat
用于查看一个文件的内容并显示在屏幕上,后只加文件名
18. cat -n
查看文件时,行号也显示到屏幕
19. cat -A
显示所有的内容,包括特殊字符
20. tac
文件内容显示在屏幕上,先显示最后一行,再显示倒数第二行,以此类推(cat的反序写法)
21. more
查看文件内容,直接跟文件名。当文件太多,一屏不能完全显示时,使用该命令,按空格可以看下一屏
22. less
作用同more,功能较more多一些。按空格键可以翻页,按j键向下移动(按一下就向下移动一行),按k键向上移动。查看文件时,按/健并输入一个字符(如root),可以查找这个字符串。查找多个该字符串,按n键显示下一个。另外,可以用?键替代/键搜索字符串。(/向下,?向上)
23. head
显示文件的前10行,直接跟文件名。
24. head -n
显示文件的前几行,-n后有无空格都可。
也可以省略n,-后面直接跟数字。
25. tail
显示文件的最后10行,直接跟文件名。
26. tail -n
显示文件的最后几行
同样,-n后有无空格即可
且字母n也可以省略
27. tail -f
动态显示文件的最后10行。如果文件内容在不断增加,使用-f则非常方便和直观。
28. ls -l
查看文件属性(所有者和所属者)
29. charp(change group)
更改文件的所属组,格式为charp[组名] [文件名]
groupadd:增加一个用户组
30. charp -R
charp只更改了目录本身,而目录下的文件并没有更改。加-R可以级联更改子目录以及子文件。
31. chown(change owner)
命令可以更改文件的所有者,格式chown[ -R ] 账户名 文件名或者chown[ -R ] 账户名:组名 文件名
-R只适用于目录,作用是级联更改,即不仅更改当前目录,连目录里的目录或者文件也全部更改
32. chmod(change mode)
用于改变用户对文件/目录的读写执行权限,格式为:chmod [ -R ] xyz 文件名(xyz表示数字;r=4,w=2,x=1)
Linux系统中,一个目录的默认权限为755,一个文件的默认权限为644)
-R 的作用等同于chown的-R ,也表示级联更改
33. umask
用于改变文件的默认权限,格式为: umask xxx(xxx代表三个数字)
查看umask的值
34. chattr(change attribute)
格式为:chattr [+-=][Asaci][文件或者目录名],其中,+、-和=分别表示增加、减少和设定。
A:增加该属性后,表示文件或目录的atime将不可修改。
s:增加该属性后,会将数据同步写入磁盘中。
a:增加该属性后,表示只能追加不能删除,非root用户不能设定该属性。
c:增加该属性后,表示自动压缩该文件,读取时会自动解压。
i:增加该属性后,表示文件不能删除、重命名、设定链接、写入以及新增数据。
增加a权限,只可以在里面创建文件,而不能删除文件,命令如下:
增加i权限,即使是root账户,也不能在dir2目录中创建或删除test6文件,命令如下:
35. lstattr ( list attribute)
用于读取文件或者目录的特殊权限,其格式为: lsattr [ -aR ] [文件/目录名]。
-a:类似于ls的-a选项,即连同隐藏文件一同列出。
-R:连同子目录的数据一同列出。
36. set uid、 set gid和sticky bit
set uid:该权限针对二进制可执行文件,使文件在执行阶段具有文件所有者的权限。比如,pass wd这个命令就具有该权限。当普通用户执行passwd命令时,可以临时获得root权限,从而可以更改密码。
set gid:该权限可以作用在文件上(二进制可执行文件),也可以作用在目录上。当作用在文件上时,其功能和setuid一样,它会使文件在执行阶段具有文件所属组的权限。目录被设置这个权限后,任何用户在此目录下创建的文件都具有和该目录所属的组相同的组。
sticky bit:可以理解为防删除位。文件是否可以被某用户删除,主要取决于该文件所在的目录是否对该用户具有写权限。如果没有写权限,则这个目录下的所有文件都不能删除,同
时也不能添加新的文件。如果希望用户能够添加文件但不能删除该目录下其他用户的文件,则可以对父目录增加该权限。设置该权限后,就算用户对目录具有写权限,也不能删除其他用户的文件。
passwd设置set uid权限:
/tmp/目录则设置了sticky bit权限
37. which
查找可执行文件的绝对路径(只能用来查找PATH环境变量中出现的路径下的可执行文件)
38. whereis
whereis命令通过预先生成的一个文件列表库查找与给出的文件名相关的文件,其格式为whereis[ -bms ] [文件名称]。
-b: 只查找二进制文件。
-m: 只查找帮助文件(在man目录下的文件)。]
-s: 只查找源代码文件。
39. locate
通过查找预先生成的文件列表库来告诉用户要查找的文件在哪,直接跟文件名(不适合精准搜)
40. find
搜索文件,格式为:find[路径][参数]。
常用参数:
-atime+n/-n: 表示访问或执行时间大于或小于n天的文件。
-ctime+n/-n: 表示写人、更改inode属性(如更改所有者、权限或者链接)的时间大于或小于n天的文件。
-mtime+n/-n: 表示写入时间大于或小于n天的文件,该参数用得最多。
-mtime+n/-n示例
-name filename:表示直接查找该文件名的文件