2013-08-05 87 views
0

我要評論過的位置這個條件來SHELL腳本註釋行

如果(一個& B)一條線嗎?光盤;

所以我看到一個腳本,但它不工作。

for f in var.c; do 
    cat $f | sed '[email protected](a & b)\(.*\)[email protected]/*\1 */@' > converted-files/$f 
done 

任何人都可以告訴我更好的腳本比這將適用於我的情況。

回答

1

您的sed表達式寫入包括只有三元運算符後的部分。嘗試:

sed '[email protected](a & b).*[email protected]/* & */@' 

這就是說,我不知道,如果你真的想用正則表達式註釋掉的代碼。

0

你真的不應該使用cat。你的代碼片段也不是有效的C,但是這可能是評論它的一個很好的理由。

for f in var.c 
do 
    sed '[email protected](a & b).*[email protected]/*&*/@' $f > converted-files/$f 
done 

就可以在註釋標記添加空格,如果你喜歡,但對稱暗示總爲0或2個空格,而不僅僅是1在您的腳本。