我寫了下面的腳本:bash腳本來檢查重定向,捲曲
#!/bin/bash
host="www.myhost.com"
IFS=$" " ;
for x in $(cat foo.list) ; do
srcURI=$(echo $x | awk '{print $1}') ;
destURI=$(echo $x | awk '{print $2}') ;
srcCURL=$(curl -s -H "Host: ${host}" -I "qualified.domain.local${srcURI}" |grep "Location:" | tr -d [[:cntrl:]]) ;
destCURL=$(curl -s -H "Host: ${host}" -I "qualified.domain.local${srcURI}" |grep "301" | tr -d [[:cntrl:]]) ;
echo " "
echo " "
echo -e "srcURI = ${srcURI}"
echo -e "destURI = ${destURI}"
echo -e "srcCURL = ${srcCURL}"
echo -e "destCURL = ${destCURL}"
echo -e "Host:DestURI = Location: http://${host}${destURI}"
echo -e "Host:srcCURL = ${srcCURL}"
echo " "
echo " "
# if [[ ${srcCURL} == "Location: http://${host}${destURI}" ]] ; then
# echo -e "Good";
# else
# echo -e "Bad";
# fi
done
我有一個名爲的foo.list文件,它具有的URI我想用檢查列表我的for循環;它看起來像這樣:
/源/ URI /位置/目標/ URI /這裏
/源2/URI /位置/ dest2/URI /這裏
/source3/URI /位置/ dest3 /這裏的uri
我想使用awk將源代碼分配給$ 1,並將目標分配給$ 2,如果我有1個uri,則工作正常,但如果我擁有多個,它似乎是chomp的一部分。
該代碼看起來很亂,因爲我已經得到了用於調試目的的隨機回聲。
在腳本結尾處(已註釋掉),我試圖將源URL的重定向目標與可疑目標進行比較。
我哪裏錯了?