我编写了一个shell脚本,使用lynx将HTML源代码转换为纯文本。
这就是它:
#!/bin/sh
if [ -f = "/usr/bin/lynx" ]
then
if [ -f = "$1" ]
then
lynx -dump $1 > $2
else
echo "File $1 does not exist!"
fi
else
echo "Lynx is not installed!"
fi现在,尽管lynx存在于正确的目录中,并且我传递了正确的参数,但我得到的结果是"Lyns is not installed!“消息或(如果我注释第一个测试)“文件$1不存在!”。我不太擅长sh,有人能告诉我脚本出了什么问题吗?
发布于 2009-05-23 15:15:27
我认为第一个if是错误的,应该替换为
if [ -f /usr/bin/lynx ]发布于 2009-05-23 15:16:21
试着去掉"-f =“,只保留"-f”
发布于 2009-05-23 16:29:25
现在是这样的:
#!/bin/sh
if [ -f /usr/bin/lynx ]
then
if [ -f $1 ]
then
lynx -dump $1 > $2
else
echo "File $1 does not exist!"
fi
else
echo "Lynx is not installed!"
fi测试的问题已经不存在了,但现在我得到了这个错误:
第7行:$2:不明确的重定向
尽管
如果从控制台运行,lynx -dump site.html > site.txt工作正常
https://stackoverflow.com/questions/901697
复制相似问题