我从脚本中获取以下摘录,该脚本从accuweather获取天气信息:
wget -O ./weather_raw $address
if [[ -s ./weather_raw ]]; then
egrep 'Currently|Forecast<\/title>|_31x31.gif' ./weather_raw > ./weather
sed -i '/AccuWeather\|Currently in/d' ./weather
sed -i -e 's/^[ \t]*//g' -e 's/<title>\|<\/title>\|<description>\|<\/description>//g' ./weather
sed -i -e 's/<img src="/\n/g' ./weather
sed -i '/^$/d' ./weather
sed -i -e 's/_31x31.*$//g' -e 's/^.*\/icons\///g' ./weather
sed -i -e '1s/.$//' -e '3s/.$//' -e '6s/.$//' ./weather
for (( i=2; i<=8; i+=3 ))
do
im=$(sed -n ${i}p ./weather)
sed -i $i"s/^.*$/$(test_image $im)/" ./weather
done
fi
触发上述代码的命令位于conkyrc文件及其~/.conkyblue/accu_weather/rss/acc_rss
中。当我从提示符运行conkyrc脚本时,出现错误
sed: can't read /home/me/weather: No such file or directory
事实上,当我检查时,“天气”文件没有创建。但是,如果直接从提示符运行命令~/.conkyblue/accu_weather/rss/acc_rss
,它将按预期工作并创建并将内容放入/ home / me / weather文件中。
我对sed命令一无所知,尽管我正试图通过这个麻烦来学习它。
代码有什么问题。我不认为这是一个权限问题,因为它写入的文件夹是我的主文件夹而我当然拥有它。
由于
答案 0 :(得分:1)
它应该由egrep创建。
运行脚本时,将在脚本过程的weather
中创建pwd
目录。
检查并查看为什么egrep不会创建文件,或者创建文件的目录。