【发布时间】:2018-04-24 02:59:30
【问题描述】:
我正在尝试编写一个 bash 脚本来提示用户输入文件名,如果文件存在于垃圾箱中,则增加文件名,然后将其移至垃圾箱。例如,如果垃圾箱中存在“file1”,则应将其重命名为“file1-1”,如果“file1-1”存在,则将其递增为“file1-2”,依此类推。
这是我目前所拥有的,但它不起作用:
#!/bin/bash
echo "Select file name: "
read fileName
if $fileName in ~/.TRASH
then
echo "$fileName found."
rename $fileName=$fileName+1
trash $fileName
echo "$fileName has been moved to trash."
else
echo "$fileName not found."
trash $fileName
echo "$fileName has been moved to trash."
fi
我假设“if”或重命名/增量计数器有什么不正确的地方,但对于我来说,我无法弄清楚。
【问题讨论】:
-
if -e?请看:shellcheck.net -
我在那里运行它,真的无法获得任何相关信息。基本上,我在第 4 行“file1:找不到命令”和第 12 行“垃圾:找不到命令”上收到错误。
-
$fileName=$fileName+1作为rename的参数在我看来很有趣。这是什么意思? -
如果它是您系统上的一个选项并且您不想将其作为练习,我建议您简单地使用
trash-cli通过终端将内容放入垃圾箱。这将为您节省大量时间。
标签: bash