在下面的代码中,如果用户输入' safe_rm'我有一个if语句试图退出程序。作为一个论点。但是,它不会考虑其他目录中具有相同名称的文件。我怎样才能改进代码呢?
for i in $*
do
if [[ 'safe_rm' = $i ]]
then
echo "Attempting to delete safe_rm - operation aborted"
exit
fi
done
答案 0 :(得分:0)
使用safe_rm
搜索参数中是否存在grep
。
以下代码适用于我,并在其他目录中记录safe_rm
的文件名:
for i in $*
do
if echo $i | grep -q 'safe_rm'
then
echo "Attempting to delete safe_rm - operation aborted"
exit
fi
done
答案 1 :(得分:0)
for i in $*
do
if [[ 'safe_rm' = $(basename $i) ]]
then
echo "Attempting to delete safe_rm - operation aborted"
exit
fi
done