我是shell脚本的新手.我正在尝试编写一个脚本,逐行从文本文件中读取URL,然后使用它来获取它们wget.此外,我需要解析日志文件以获取错误消息.
#!/bin/sh
# SCRIPT: example.sh
#reading the url file line by line
DIR = /var/www/html/
# wget log file
LOGFILE = wget.log
# wget output file
FILE = dailyinfo.`date +"%Y%m%d"`
cd $DIR
FILENAME = url.txt
cat $FILENAME | while read LINE
do
echo "$LINE"
wget $LINE -O $FILE -o $LOGFILE
done
Run Code Online (Sandbox Code Playgroud)
我已经更改了权限,chmod +x example.sh
但在执行时我得到了command not found错误DIR,FILE并且LOGFILE.怎么纠正呢?还有如何去解析部分?
问题#1,在分配变量时必须使用以下语法:
VARIABLE=value
Run Code Online (Sandbox Code Playgroud)
即在之间没有空格VARIABLE的=和新的价值.
否则,它会尝试VARIABLE作为命令执行,从而触发command not found错误.
#!/bin/sh
# SCRIPT: example.sh
#reading the url file line by line
DIR=/var/www/html/
# wget log file
LOGFILE=wget.log
# wget output file
FILE=dailyinfo.`date +"%Y%m%d"`
cd $DIR
FILENAME=url.txt
cat $FILENAME | while read LINE
do
echo "$LINE"
wget $LINE -O $FILE -o $LOGFILE
done
Run Code Online (Sandbox Code Playgroud)
可能会通过命令找不到错误