1.linux文件类型详细介绍
1.1普通文件,ls -l加文件名来查看
以 - 开头,这些文件一般是用相关的应用程序或系统命令创建的。
普通文件又分为文本文件、二进制文件、数据格式文件
1.2目录文件,ls -ld加目录来查看属性
以d开头的,执行ls -F,它会在不同文件的结尾加上特殊标识,用以区分文件
1.3符号链接文件,也被称为软链接文件,它本身没有内容,而是指向了其他实体文件
ln -s 源文件名 新文件名_soft.txt可以给文件创建软链接,如果不用-s,则标识创建硬链接,硬链接文件不舍用目录
1.4字符/块设备文件
以c开头;以b开头,存储数据供系统及程序访问的接口设备
1.5套接口文件
以s开头,启动数据库软件时产生的文件
1.6管道文件
以p开头,用于解决多个程序同时访问一个文件所造成的错误
2.文件目录查找命令
2.1file:显示文件类型
-b 精简输出文件或目录
3.find:查找目录下文件
语法说明:find -H-L-P path options tests actio
符号链接 需要查找的路径 参数 限定的条件 执行的动作
3.1-atime、-mtime 查找指定时间内修改过的文件
find . -atime -2 (表示查找当前目录下,两天内被访问的文件)
find . -mtime -5 (查找修改时间在5天内的文件)
3.2 -name 指定关键字查找
find /etc/oldboy -mtime +5 -name "*.txt" (表示在/etc/oldboy目录下查找5天以前以 .txt结尾的文件)
3.3 ! 反向查找,d代表目录
find . ! -type d (表示查找不是目录的文件,!必须在目录后)
3.4 f普通文件,-exec对匹配的文件执行该参数给出的shell命令(比如说ls、rm),最后以分号结束的,所以前面要给反斜杠转义 , {}指find命令 查找的内容,
find / -type f -exec ls -l {} \ ; (find命令匹配到了根目录下所有的普通文件,并交给-exec选项中使用 ls -l 命令将他们列出)
3.5xargs 使用xargs来传递其他命令参数的过滤器 , | 管道
find / -type f | xagrs ls -l (find命令查找到的文件通过管道和xargs传递个 ls -l (ls -l 可以为rm -f等命令)
3.5.1 -i xargs执行mv的例子
find . -name "*.txt" | xargs -i mv {} /tmp (通过find命令过滤当前文件夹下所有以 .txt 结尾的文件并通过管道传递给xargs,然后在通过 xargs -i 将过滤出来的 .txt文件传递给mv并将它们放到mv后面且移动到 /tmp 下
3.5.2 -p find结合xargs的 -p 选项使用的范例
find /etc -name "file*"|xargs -p rm -rf (使用-p参数会提示用户是否执行后面的命令,将 /etc 下过滤出来的所有带file的目录通过管道传给xargs,然后xargs在将参数传递给 rm -rf