次のファイルを含むディレクトリがあるとします。
1.txt 2.txt 3.txt
私はこれをコピーして基本的に同じディレクトリに貼り付け、次のような新しいファイルを作成したいと思います。
1.txt 1(1).txt 2.txt 2(1).txt 3.txt 3(1).txt
これは思ったより難しいですね!これはWindowsでは簡単に見えます。複数のファイルを強調表示してコピー/貼り付けすると、同じファイルが作成されますが、名前に「コピー」が追加されます。
ベストアンサー1
一般的なUnixスタイルでは、ファイルを繰り返す必要があります。
for file in 1.txt 2.txt 3.txt; do cp -pi "$file" "${file%.*}(1).txt"; done
${file%.*}
ファイル名から拡張子を削除し、番号を追加して(1).txt
拡張子を復元します。cp
宛先がすでに存在する場合は、メッセージを表示し()権限を保持する-i
オプション()です-p
。
このパッケージはほとんどのLinuxシステムで利用できますmmv
。これにより簡単に実行できます。
mcp '*.txt' '#1(1).txt'
.txt
これにより、で終わる各ファイルが新しいファイルにコピーされ、最初のワイルドカード(#1
)と一致し、(1).txt
括弧は引用符で囲まれているため、ここでエスケープする必要はありません。
または、グラフィックファイルマネージャを使用すると、Windowsと同じ操作を実行できます。