Joh*_*ohn 82 ls bash parameter arguments
假设当我执行 ls 命令时,输出是:
file1 file2 file3 file4
Run Code Online (Sandbox Code Playgroud)
是否可以只显示特定的输出列,在这种情况下是 file2?我尝试了以下方法但没有成功:
echo ls | $2
Run Code Online (Sandbox Code Playgroud)
基本上我只想回显第二列,在这种情况下,我想回显:
file2
Run Code Online (Sandbox Code Playgroud)
小智 110
以下命令将ls
输出格式化为一列:
ls -1 /directory
Run Code Online (Sandbox Code Playgroud)
Chr*_*own 45
最可靠的方法是将文件放入一个数组中,然后获取第二个,这样就无需进行任何解析:
files=(*)
printf '%s\n' "${files[1]}"
Run Code Online (Sandbox Code Playgroud)
取回文件的顺序取决于 的值LC_COLLATE
。因此LC_COLLATE=C
,如果您想在所有极端情况下进行“标准”排序,您可能需要先进行设置。
tkr*_*nwa 15
当输出不是终端时,您需要添加-C
as ls
using single-column 模式。 awk
然后打印第二列:
ls -C | awk '{print $2}'
Run Code Online (Sandbox Code Playgroud)
小智 11
我想你正在寻找
ls -1
Run Code Online (Sandbox Code Playgroud)
它不会在单列中显示权限、所有者、组、日期、大小......而是简单的文件名。
归档时间: |
|
查看次数: |
183953 次 |
最近记录: |