xargs -0
の間 \0 で区切られた入力に使用することを意図しています (find -print0
のように) )、ls
この方法で出力を区切るオプションはありません。
ただし、
ls -1 /path/glob | tr '\n' '\0' | xargs -0 -n 1 basename
途中で改行をヌルに変換するトリックを行います。これにより、xargs がスペースを含む名前を処理できるようになります。
編集:-n 1
を追加 xargsへ
私はこれを使用します:
ls | tr '\n' '\n'
次のようなリストが得られます:
file1.mp3
file2.mp3
file3.mp3
...
ls -1 <path> | sed 's#.*/##'