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 の位置に関係なく、すべてのファイルがコピーされます。