SYSTEM DEVELOPMENT

STUDY GROUP

Linux とある文字列がファイル名に含まれるファイルを複数コピー

先週、仕事で特定の文字列がファイル名に含まれるファイルをコピーしたので、
備忘録的にまとめておきます。
【実行コマンド】
find / -name [とある文字列]* | xargs -i cp {} [コピー先ディレクトリ]
■find コマンド:ファイルやディレクトリを検索する
・/:ルート以下を検索
・-name:フィル名を指定
・[とあるファイル名]:ファイル名に含まれる文字列
・*:ワイルドカード
■xargs コマンド:標準入力を引数として指定コマンドを実行
・-i:{}に標準入力を引数として渡す
■cp コマンド:ファイルをコピーする
これで、システム(CentOS)のルート(/)以下の「とある文字列」を含む20個のファイルをあるサーバにコピーしさらにローカルPCに保存し、さらにそれを別のファイル共有システムのとあるフォルダに格納しました。
近々、容量にして合計で数十GB分のファイルをコピーして保存することになりそうです。
これって、find コマンドと xargs コマンドがなかったら1個1個コピーしなければならないんで、やってらんないですよね。
find コマンドと xargs コマンドがあってよかった。
 

menu