
Linux ターミナルを使用して、多くのファイルを新しい場所にコピーしようとしています。次のコマンドを試しました:
sudo で位置を特定 -i欲しいファイル| xargs cp $1 /すべてをコピーしたい場所/
エラーが発生します。これを処理するための正しい方法は何ですか?
答え1
xargs
そのようには動作しません。$1 は使用されません。通常は、引数をパラメータ リストの末尾に追加するだけです。ただし、この場合は、宛先ではなくターゲットであり、末尾のパラメータは必要ないため、動作しません。
xargsのフラグをチェックしてください-i
。置換が可能です。デフォルトでは{}が使われます。find
sudo locate -i *file_I_want* | xargs -i cp {} /place_I_want_everything_copied_to/
@javano のコメントも回答ですが、ファイル名にスペースが含まれていると機能しなくなります (ただし、スペースがあると上記の xargs の使用も機能しなくなると思います)