我正在使用以下命令列出 unix 中挂载点所有者的权限:
bdf|awk '{print $6}'|grep -v Mounted|xargs ll -d
Run Code Online (Sandbox Code Playgroud)
HP-Ux 中的此命令为我提供了如下输出:
drwxr--r-- 61 root root 8192 Jan 1 2014 /
drwxr--r-- 102 root root 8192 Jan 1 2014 /home
Run Code Online (Sandbox Code Playgroud)
但是在 Linux 中这个命令:
df -hP|grep -v Mounted|awk '{print $6}'|xargs 'll -d'
Run Code Online (Sandbox Code Playgroud)
给出一个错误:
xargs: ll -d: No such file or directory
Run Code Online (Sandbox Code Playgroud)
错误的根源在于您ll -d
在 xargs 的参数中引用了引号。 xargs
然后试图执行一个文件ll -d
,它在你的路径上找不到任何地方。如果删除引号,该命令可能会起作用。但是,如果ll
是别名而不是PATH上的命令,则可能还需要ls
直接使用:
df -hP | grep -v Mounted | awk '{print $6}' | xargs ls -ld
Run Code Online (Sandbox Code Playgroud)
如果您有包含空格的挂载点,您的解析df
将无法解释这一点。
归档时间: |
|
查看次数: |
714 次 |
最近记录: |