shell基础命令之ls
shell基础命令之ls
1 命令格式
ls [选项][命令名]
2 命令功能
列出目标目录内所有子目录及文件
3 常用参数
-a, -all 列出目录下所有目录及文件,包括以.开头的隐藏文件
-A 同-a,但不列出以.开头的当前目录以及以..开头的父目录
-c 配合-lt:根据ctime排序以及显示ctime(文件最后更改时间);配合-l:显示ctime但根据文件名称排序;否则根据ctime排序
-C 每栏由上到下列出项目
-color[=WHEN]控制是否用色彩分辨文件,WHEN可以是never,always,auto之一
-d 将目录像文件一样显示,而不是显示其下的文件
-f 对输出的文件不进行排序,-aU选项生效,-lst选项失效
-g 类似-l,但不列出所由者
-G -no-group 不列出任何所有组信息
-h -human-readable 以人类容易理解的方式列出文件的大小(例如1k 234M 1G)
-i -inode 列出每个文件的inode号
-k -block-size=1k,以k字节的形式表示文件的大小
-l 列出除文件名外的,文件的所有者,权限,文件大小等信息
-m 所有项目以逗号分隔,并填满整行行宽
-o 类似-l,显示文件除组信息外的所有信息。
-r -reverse 以相反次序排列
-R -recursive同时列出所有子项目层
-s -size 以块大小列出所有子目录层
-S 根据文件大小排序
-t 以文件修改时间排序
-u 配合-lt 显示访问时间并且以访问时间排序
-v 根据版本进行排序
-U 不进行排序,以文件系统原有次序排序
-w –width=COLS 自行指定屏幕宽度而不使用目前的数值
-x 逐行列出项目而不是逐列列出
-X 根据扩展名排序
-1 每行之列出一个文件
-help 显示帮助信息并离开
-version 显示帮助信息并离开
4 常用命令举例
例1:计算当前目录下文件数和目录数
ls -l * |grep “^-“|wc -l —文件个数
ls -l * |grep “^d”|wc -l —目录个数
例2:列出当前目录下所有文件的绝对路径,对目录不做递归
find $PWD -maxdepth 1 | xargs ls -ld
扩展
1. 显示彩色目录列表
打开/etc/bashrc, 加入如下一行:
alias ls=”ls –color”
下次启动bash时就可以像在Slackware里那样显示彩色的目录列表了, 其中颜色的含义如下:
1. 蓝色–>目录
2. 绿色–>可执行文件
3. 红色–>压缩文件
4. 浅蓝色–>链接文件
5. 灰色–>其他文件