以下のコマンドで次のエラーが発生する理由を誰かが説明できますか?
cannot open `{}' (No such file or directory)
コマンド
$ ls -al|grep -v '^d\|^$'|awk '{print $10}'|xargs file '{}'
期待した結果が得られましたが、エラーが発生しました
{}: cannot open `{}' (No such file or directory)
cpuinfo: empty
cygdrive: symbolic link to /cygdrive
devices: empty
filesystems: empty
loadavg: empty
meminfo: empty
misc: empty
mounts: symbolic link to self/mounts
partitions: empty
self: symbolic link to 19812
stat: empty
swaps: empty
uptime: empty
version: empty
xargs
間違って使用しているため、findがどのように機能するかに触発された可能性があります。
xargs
入力を受け取り、それを分割していくつかのコマンドを生成しますが、(要求しない限り)xargsの後に指定するコマンドの最後に複数の引数を与えるため、あなた{}
はコマンドの一部にすぎません。したがって、最終的file {} <file_1> <file_2> ... <file_n>
にfile {} <file_n+1>...
は、、 ...を実行することになります(あなたの場合、ファイルが非常に少ないため、1つのコマンドしか実行されません。)
というファイルがないので{}
、そうfile
教えてくれます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加