首页 > 代码库 > Linux文件与目录管理命令小结

Linux文件与目录管理命令小结

1、cd

cd ~,cd:回到自己的主文件夹;cd ..:目前的上一层;cd -:回到刚才那个目录

2、pwd显示当前的所在的目录

-p:标书不以连接文件的数据显示,而是显示正确的完整路径

3、mkdir新建新目录

-p:自行创建多层目录;-m mod:强制设置权限

4、rmdir删除“空”的目录

当要将一个非空的目录下的东西删掉:rm -r dirName

5、ls查看文件与目录

-a:全部文件,包括隐藏文件;-d:仅列出目录本身;-F:根据文件、目录等信息给予附加数据结构(*:代表可执行文件,/:代表目录,=:代表socket文件,|:代表FIFO)

-i:列出inode号码;-l:列出长数据串(常用);-S:以文件容量大小排序;-t:以时间排序;--color=never/always/auto(文件特性是否给予颜色),--time={atime,ctime}

6、cp [-adfilprsu] 源文件 目标文件

-a:相当于-pdr;-d:若源文件为连接文件的属性,则复制连接文件属性而非文件本身;-i:若目标文件已经存在,在覆盖时会先询问操作;-l:进行硬连接的连接文件创建,而非复制文件本身;-p:连同文件的属性一起复制过去;-r:递归持续复制(用于目录)

7、rm(移除文件或者目录)

-i:互动模式;-r:递归删除

8、mv(移动文件与目录、或更名)

-f:如果目标文件已经存在,不会询问而直接覆盖;-i:互动模式;-u:若目标文件已经存在,且比较新的时候才会更新

9、cat(查看文件内容)

-b:列出行号(空白行布不标号);-E:将结尾处的断行字符$显示;-n:打印行号(包括空白行);-V:列出特殊字符;-T:将【Tab】以^I显示出来

10、tac(反向列示)

11、nl(添加行号打印)

-b:指定行号的方式 a:空行也列出 t:空行不列;-n:列出行号的表示的方法 ln:行号在屏幕的最左边显示 rn:行号在自己字段的最右边显示,不加0 rz:同rn且加0;-w:行号字段占用的位数

12、more(翻页查看)

在more这个程序额运行过程中,一下几个按键功能:

空格键:向下翻一页      Enter:向下翻一行      /字符串:向下查询字符串     :f:立即显示出文件名以及目前显示的行数     q:退出     b:往回翻页(只对文件有用,管道无用)

13、less(一页一页翻动)

空格键:向下翻一页    【PageDown】:向下翻动一页   【PageUp】:向上翻动一页    /字符串:向下查询字符串   ?字符串:向上查询字符串     n:复制前一个查询   N:反向复制前一个查询  q:退出

14、head(取出前几行)

-n number:后面接数字代表几行(不写number默认显示10行,负数表示后面number行数据都不打印)

15、tail(取出后面几行)

-n number:(后面接数字,代表后几行的意思,不写默认10行,+number代表前面的number行数据不打印)

16、od(非纯文本文件)

-t:后面可以接各种类型

c:ASCII字符输出;d[size]:十进制;f[size]:浮点数;o[size]:八进制;x[size]:十六进制

17、touch修改文件时间或创建文件

-a:仅修改access time(访问时间);-c:仅修改status time(状态时间),若文件不存在则不新建;-d:后面可以接欲修改的日期;-m:仅修改modification time;-t:后面可以接欲修改的时间,格式【YYMMDDhhmm】

18、umask:设置新建文件或目录默认的权限

19、chattr设置问阿金的隐藏属性

+:增加特殊参数;-:减少某一个特殊参数;=:仅有后面接的参数

a:此文件只能增加数据,而不能删除和修改数据(常用)

i:让一个文件不能被删除、改名、设置连接也无法写入或添加数据(常用)

20、lsattr显示文件的隐藏属性

-a:将隐藏文件的属性也列出来;-d:如果是目录,仅列出目录本身属性而非目录内的问文件名;-R:连同子目录的数据也一同列出来

21、(关于SUID、SGID、SBIT下一篇在详细记录)

22、file查看文件的类型

23、which寻找“执行文件”(脚本文件名、命令)

24、whereis(文件名的查找,利用数据库来查找数据,快速高效)

-b:只找二进制文件;-s:只找source源文件;-m:只找在说明文件manual路径下的文件

25、locate(文件名的查找,寻找的数据由已经创建的/var/lib/mlocate里面的数据提供)

-i:忽略大小写;-r:后面接正则表达式的显示方式

26、find(最常用)

参数一:

-mtime n:n为数字,在n天之前的“一天之内”被更改的文件

-mtime +n:意思是n天之前(不含n天本身)

-mtime -n:意思是n天之内(含n天)

-atime、-ctime的用法和-mtime一样参数二:

-uid n:查找属于n这个用户账号Id的文件

-gid n:查找属于n这个用户组Id的文件

-user name:查找属于name这个用户的文件

-group name:查找属于name这个用户组的文件

-nouser:不属于任何用户

-nogroup:不属于任何用户组

参数三:

-name filename:查找名为filename的文件

-size [+-]size:查找比size还大(+)或小(-)的文件,单位为c:byte,k:1024bytes

-type TYPE:指定文件类型,一般文件(f)、目录(d)、socket文件(s)、FIFO(p)、连接文件(b/c)

-perm mod:查找文件权限刚好为mod的文件

-perm -mod:查找问文件必须包含mod所有文件(必须全部包含)

-perm +mod:查找文件包含mod任一权限(有一个即可)

参数四:

-exec command:-exec后面可再接其他命令来处理查找到的结果

fiind的几个例子:

例一:找出/etc下面,文件容量大于50KB且文件的所有者不是root的文件名,并将权限完整列出

find /etc -size +50k -uid +0 -exec ls -l {} \;

例二:找出/etc下面,容量大于1500KB以及容量等于0的文件,并完整列出

finf /etc \( -size +1500k -o -size 0k \) -exec ls -l {} \;

最后再补充一点:权限与命令的关系

情况一:让用户能进入某个目录(比如cd):

(1)目录:至少x的权限

(2)文件:如果用户需要查阅(ls等),则文件需要r权限

情况二:用户在某个目录内读取一个文件(cat、more、less)

(1)目录:至少x权限

(2)文件:至少r权限

情况三:用户修个一个文件

(1)目录:至少r和x权限

(2)文件:至少r和w

情况四:让一个用户在一个目录下创建文件

(1)目录:至少w和x权限

情况五:让用户进入目录并执行目录下的某个命令

(1)目录:至少x权限

(2)文件:至少x权限

Linux文件与目录管理命令小结