我最近才开始使用 UNIX,但在尝试实现 getopts 时遇到了问题。
下面的函数找到一个文件,然后将其删除到回收站,尽管我正在尝试将 getopts 与 -i 一起使用,它会在移动后显示一条消息。语法工作正常,但是当我使用 getotps 命令实现 while 循环时,它不再工作。
谁能给我任何有用的建议,将不胜感激
function moveToBin(){
while getopts i opt
do
case $opt in
i) echo "file removed!" ;;
esac
done
if [[ -e $1 ]]; then
inode=$(ls -i $i | cut -d " " -f1)
name=$1_$inode
pathOfFile=$(pwd $1)
restoreEntry=$1_$inode:$pathOfFile/$1
mv $1 ~/deleted
mv ~/deleted/$1 ~/deleted/$name
echo "Before extension code"
extension=$(find ~ -inum $inode)
fi