补充说明
v 通常不是独立的二进制程序,而是 ls -l -b 的别名或等价简写:以长格式显示权限、链接数、所有者、大小和时间,并对不可打印字符做转义。它在部分 BSD/Unix 环境和 shell 配置中出现,GNU coreutils 中对应的可执行文件是 vdir。
由于它多半来自别名,不同系统上的行为可能略有差异。可以先用 type v 确认当前 shell 把它解析成别名、函数还是外部命令;若提示未找到,直接使用 ls -l -b 或 vdir 即可。
-b 的作用是把文件名中的控制字符和非打印字节转义成 \nnn 形式,适合检查名字异常的文件。相比直接 ls -l,输出更安全,不会因为文件名中的转义序列扰乱终端。
语法
v [选项] [文件...]
选项
参数会原样传给底层的 ls,因此常见选项与 ls 相同:
-a:显示包括隐藏文件在内的所有条目。-h:以 K、M、G 等易读单位显示大小。-t:按修改时间排序。-S:按文件大小排序。-r:反转排序结果。-R:递归列出子目录。
实例
# 确认 v 是别名、函数还是外部命令
type v
# 按等价方式列出当前目录
v
# 显示隐藏文件并使用易读大小
v -a -h
# 不依赖 v,直接使用等价命令
ls -l -b
# 使用 GNU coreutils 的 vdir(同样等价于 ls -l -b)
vdir
# 检查文件名中是否含有不可打印字符
v | cat -v