ls - 列出目录内容

ls 显示文件和目录信息。不指定路径时,它列出当前目录中不以 . 开头的项目。

常用参数

参数说明
-a--all显示包括 ... 在内的全部项目
-A--almost-all显示隐藏项目,但不显示 ...
-l使用长格式
-h--human-readable-l-s 配合,使用易读的大小单位
-t按修改时间排序,新的在前
-S按文件大小排序,大的在前
-r--reverse反转排序结果
-R--recursive递归列出子目录
-d--directory显示目录本身,而不是目录内容
-1每行显示一个项目;这里是数字 1

使用示例

# 长格式显示,包括隐藏项目
ls -la
 
# 使用易读单位显示大小
ls -lh
 
# 按修改时间排序
ls -lt
 
# 按大小排序
ls -lhS
 
# 显示指定目录本身的信息
ls -ld /var/log
 
# 递归显示目录内容
ls -R project

排序结果受当前区域设置影响。需要稳定的字节顺序时,可临时设置:

LC_ALL=C ls

脚本中的注意事项

ls 的输出主要供人阅读,格式会受终端、别名、区域设置和文件名影响。脚本不应通过拆分 ls 输出处理文件名;应使用 Shell 通配符、find -print0 等能够明确处理边界的方式。

参考资料