ls
列示文件
-a 列出所有文件,包括以 . 开头的隐藏文件,-A,不包括. ..
-d,仅目录
-R 递归列出子目录里面的文件
-L 列出符号链接指向文件的信息
-l 长格式,每行一个文件,包括文件的属性,-h 单位换算,一般 -lh 连用
-F 根据文件的类型,在文件名后面加后缀,如可执行文件加*,目录加/;-p 类似 -F,但是不标记可执行文件
-q 将文件名中的非打印字符输出为问号(终端默认值)
-b 文件名中不可打印字符使用转义字符输出
-k 以 kb 显示文件大小
-m 只显示文件名,每一行尽量多的显示,中间用逗号分隔
-1 数字1,只显示文件名,每行显示一个文件名,即只有一列
-n 输出 uid 和 gid,而不是默认的用户名和组名
-s 在最左侧列出块数
-w n 假设屏幕的宽度为n,如1000,这样的话,可以用 -m 将所有的文件名都写在一行里面,便于解析
-x 多列输出,横向排序
-C 多列输出,纵向排序,默认,即按字母表排序
-X 以扩展名字典顺序排序
-G 不显示组信息
-Q 使用双引号括起文件名
--full-time 列出完整的时间,而非缩写
------------------排序------------------
-f 按照在磁盘上存储的顺序列出,-U 等同
-t 按文件最近修改时间排序,即 mtime
-u 按文件最近访问时间排序,即 atime
-c 按文件状态修改时间排序,即 ctime,通过chmod修改文件的ctime
--time=access(atime)--time=use(mtime)--time=status(ctime)
-S 按大小排序,大文件在前
-r 逆序
find
find [path] -name fname 按文件名查找,默认当前路径
find . -name '*.log' -mtime +10 -exec rm {} \;
文件名
-name 按文件名查找,-iname 不区分大小写
-regex pattern 正则查找
-path 指定路径,-ipath 不区分大小写
属主、属组
-gid n,-group gname 搜索指定组,-nogroup 无组文件
-uid n,-user name 搜索用户
文件类型
-type 文件类型,如 c b 等,--fstype 文件系统类型,如 nfs
文件大小
-empty 空文件
-size n[bckm] 按大小检索
时间
-atime,-mtmie,-ctime [+n|n|-n],n表示前n天的文件,+n表示前n天往前的文件,-n表示前n天往后的文件
-amin,-mmin,-cmin[+n|n|-n] 同time
-daystart 从当日开始计算时间,而不是24小时之前,同 time 选项连用
-newer 比指定文件新的文件 ,-newer f1 !f2 比 f1 新但比 f2 旧的文件,-cnewer 状态修改时间
-used n 文件最后访问时间是他状态修改的前n天
按权限 -perm [/|-]755 /匹配任意一位即可,-必须完全匹配
处理动作
-print 打印到屏幕
-ls 对查到的文件执行ls命令
--delete 删除检索到的文件
-fls /path/to/somefile:查找到的所有文件的长格式信息保存至指定文件中
-exec cmd {} \; 对查找到的文件执行命令,如 -exec rm -rf {} \; 后面的 \; 是必须的
-ok cmd {} \; 操作前需要用户确认,有些命令不能有太多参数,用 find ... |xargs command 处理
其他命令
tree树状结构显示目录
-d 只显示目录
-L 3:显示前三层
-P pattern:只显示正则匹配到的目录
basename取路径上的文件名
dirname取路径上的目录名
.当前目录 ..父目录 -前一个目录 ~自己的主目录 ~sybase
mkdir-p,递归子目录
-m,忽略系统umask设置
mktemp在/tmp下创建不重名的临时文件
mktemp XXXXXX,创建临时文件的随机名称长6个字符,最少3个字符,
-d,临时目录
-u,只返回临时文件名
pwd当前路径
-p,对于软连接文件显示真实路径
cp,文件复制
-d, -l, -s,对于链接文件,复制链接文件,而不是文件本身
-r,递归拷贝
-f,强制覆盖
rm删除
-f,强制
-i,删除前询问,
-r,递归删除
mv移动 mv /a/b /c/d,把/a下面的b移动到/c下面重命名为d
ln软连接
-s:建立软连接
vgscan是lvm的软链接,但vgscan和lvm的使用方式不一样,应该是程序内部判断文件名产生的不同结果
举报/反馈