Linux脚本中case语句的小问题

Linux脚本中case语句的小问题,第1张

按照你到思路,你的shell程序主要有两个错误:

1,变量ft赋值错误;按照你的写法,ft的结果是:file /etc,因为等式右边加的是单引号,是字符串原样赋值,而并没有取到file这个命令到结果,正确写法是:ft=$(file "$NAME")

2,第二个问题是格式问题,小问题。case语句中的备选项,如“$NAME:directory”,冒号后要加一个空格,因为file /etc这条命令的结果是/etc: directory,注意冒号后面是有一个空格的,所以case语句中到备选项格式要与之匹配。

由于你写的程序有这两个错误,解释执行时,会转到case语句中到最后一项输出,即输出:/etc is Other file type

我所说到已经经过本人亲自测试,所用系统为Fedora 12.

希望能帮到你。

不是蓝色,那是因为remove,clean不是命令。

你的这个脚本,是不是在windows上编辑的,然后传到linux上的,如果是的话,文件中有一些不可见的字符的,所以会有语法错误。

查看有没有不可见特殊字符可以用一下命令:

1$cat -A 文件名

文件内容中有^M的就不行,$表示换行符。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7213744.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存