我想知道如何创建一个bash脚本,询问用户所需的名称,然后创建一个具有该名称的文件。
类似的东西:
introduce name: test [enter]
(then use that name as the name of the final zip)
zip -9 test.zip *
(creating the file)
"test.zip" crated.
(print out that message)
end
答案 0 :(得分:3)
试试这个:
read -p 'introduce name:' input
zip -9 $input.zip *
检查
help -m read | less
如果你是一名bash初学者,那么一些很好的指示就可以开始学习:
常见问题解答:http://mywiki.wooledge.org/BashFAQ
指南:http://mywiki.wooledge.org/BashGuide
参考:http://www.gnu.org/software/bash/manual/bash.html
http://wiki.bash-hackers.org/
http://mywiki.wooledge.org/Quotes
检查您的脚本:http://www.shellcheck.net/
并且避免人们说要使用tldp.org
网站学习的建议,tldp bash指南已经过时,在某些情况下只是完全错误。
答案 1 :(得分:-1)
我写了这样的东西
read -p 'introduce name:' input
ext=$(sed -n 's/\(^.[^$]*\)\(.\{3\}$\)/\2/p' <<< $input)
if [ $ext = zip ]
then zip -9 $input *
elif [ $ext = cbz ]
then zip -9 $input *
elif [ $ext = rar ]
then rar a $input *
else
echo "I just zip, cbz and rar, sorry :("
fi