Command-Line

移動可能重命名

  • December 10, 2021

是否可以構造一個將文件移動到另一個目錄的命令,如果相同的文件已經存在,生成一些不在目錄中某個文件名中的隨機字元串並將文件重命名為這個隨機字元串?

我知道該mv -i命令,所以我手動執行並將包含的文件重命名為其他內容。

謝謝

mv -b file destination/

應該做的伎倆。

mv --backup=TYPE

將像類型所說的那樣,它是以下之一:

none, off       never make backups (even if --backup is given)
numbered, t     make numbered backups
existing, nil   numbered if numbered backups exist, simple otherwise
simple, never   always make simple backups

沒有標准或通用的單步命令。這是一個兩步過程,依賴於非標準但常見的mktemp.

tmp=$(TMPDIR=$(dirname -- "$destination") mktemp -t)
mv -- "$source" "$tmp"
echo n | mv -i -- "$tmp" "$destination"

引用自:https://unix.stackexchange.com/questions/23873