0
也許我正在對bash進行一些調整,但是我有一個包含url列表的變量。使用sed編輯腳本內部的變量
#!/bin/bash
/* returns
/path/page/one.php
/path/subseciton/
/path/to/this/section/
/path/to/yet/aother_section/about.php
etc
*/
list_of_urls = $(pull_urls.sh)
然後,我有一個for循環運行,從舊服務器和新服務器拉文本內容。在我運行各種diff命令的每一個上看看發生了什麼變化。
for i in $urls
do
echo $i
storage_area=./working/$i/
mkdir -p $storage_area
xidel http://oldserver/$i -e '//div[@id="maincontent"]//p' > $storage_area/old.txt
xidel http://newserver/$i -e '//div[@id="content"]//p' > $storage_area/new.txt
diff $storage_area/old.txt $storage_area/new.txt > $storage_area/diff.diff
wdiff $storage_area/old.txt $storage_area/new.txt > $storage_area/wdiff.wdiff
done
我的問題是,我需要刪除結尾的斜線。以下列方式這樣做是可取的嗎?
// inside the loop, before xidel calls
i=$(echo $i | sed -e 's/\/$//g')
謝謝。一旦時限到期,關於標記爲正確。你介意解釋這是如何以及爲什麼{%/}這有效嗎?那叫什麼?或者,我應該閱讀哪個手冊頁?再次謝謝你! – Richard 2013-05-10 16:25:04
@Richard點擊這裏:http://www.gnu.org/software/bash/manual/html_node/Shell-Parameter-Expansion.html – Kent 2013-05-10 16:28:29
如果你喜歡閱讀man page,man bash和搜索Parameter Expansion – Kent 2013-05-10 16:30:14