1つのコマンドを使用して名前に "t_1"を含むすべてのファイルを別のディレクトリにコピーするにはどうすればよいですか?
答え1
使用
cp /path/to/files/*t_1* /path/to/destination
そうでなければ
cp ./*t_1* /path/to/destination
ファイルが現在のディレクトリにある場合。
または、
for f in ./*t_1*; do
cp "$f" /path/to/destination
done
これは、現在のディレクトリにこのパターンに一致する何千ものファイルがある場合でも、うまく機能します。
答え2
簡単な解決策は次のとおりです。
find ./ -name '*t_1*' -exec mv '{}' ./ \;
このコードは、名前に検索パターンを含むすべてのファイルを階層内の1レベル上に移動します。
たとえば、すべての「t_1」ファイルが次の場所に保存されているとします。/ホーム/デスクトップ/目次。それから/家/端末でこのコマンドを実行してください。すべての「t_1」ファイルが次から削除されます。/ホーム/デスクトップ/到着/家/目次。
ファイル名の t_1 の位置に関係なく、すべてのファイルがコピーされます。