ソースファイルがターゲットファイルを上書きしたときにファイル情報(サイズ、日付など)を表示できる「super」mvコマンドはありますか?ファイルが移動され、両方のファイルの名前が同じ場合です。
これが発生した場合は、まず「mv」コマンドをキャンセルし、ターゲットフォルダを「ls」してファイルサイズ、タイムスタンプなどを確認し、ソースファイルと比較してどのファイルを保持したいかを確認する必要があります。上書きするとmvジョブが復元され、それ以外の場合は「rm」ソースジョブのみが必要です。
進行中のコマンドをキャンセルせずに決定を下すために、XセッションまたはWindowsで発生するのと同様の動作を取得することをお勧めします。
答え1
smv
(「super move」の場合)などの非常に単純なスクリプトラッパーを使用してください。
スクリプトはcmdと同様に、正確に2つのパラメータを受け入れますmv
。たとえば、を使用して実行可能であることを確認し、chmod 751 smv
その場所に対応するパスがyrPATH
変数にあることを確認します。
#!/usr/bin/bash
if ! [ $# -eq 2 ]; then
printf "%s\n" "Usage: Include exactly 2 fully qualified file names as arguments, as in:" \
" $ smv /path/to/source /path/to/destination" "Abort."
elif [ -e "$2" ]; then
(printf "\n%s\n\n" "Destination file exists." && /usr/bin/stat "$2" ) 2>&1
printf "\n"
read -p "Clobber it ? (Y/n): " answer
case "$answer" in
N|n) echo "$1 not moved; $2 preserved. Abort."; exit(11) ;;
Y|y) \mv -f "$1" "$2" ;;
esac
else
printf "\n%s\n" "Destination file does not exist."
\mv -i "$1" "$2"
printf "%s\n" "$1 was moved to $2."
fi
ファタイ
答え2
-i
または上書きする前にメッセージを表示する--interactive
オプションmv
。その後、ファイル名を別の端末に簡単にコピーし、そこでそのメタデータを表示できます。