Linux shell重命名文件(如果存在)

时间:2012-12-01 12:26:01

标签: linux shell

嘿,我有以下代码,用于检查文件是否已存在于删除之前最初所在的位置。
这是有效的,如果它不存在那么它将被移动,这也有效, 但我的问题是如何让shell脚本要求用户指定一个新名称来重命名该文件,然后如果已存在同名文件,则将其存储在新名称下。 重命名的代码应该位于if

的第一部分的echo下面
#! /bin/sh
#restore the dustbin contents 

if [[ -f "$(grep $1 /root/TAM/store) " ]]; then
   echo "A File with the same name already exists please rename this file to store it"
else 
   mv /root/TAM/dustbin/$1 `grep $1 /root/TAM/store`
   cd /root/TAM
   rm store
   touch store
fi

修改

read -p "please enter a new name:  " newName
mv /root/TAM/dustbin/$1 /root/TAM/dustbin/$newName
cd /root/TAM
rm store
touch store

1 个答案:

答案 0 :(得分:3)

要提示用户,请尝试执行以下操作:

read -p "New name >>> " name
echo "The file name is $name"