2017-03-11 42 views
0

我試過「%」(但在一個批處理文件)全部替換「#」字符:桑達:我怎麼跟

sed "s/#/\%/g" 

但剝離出去%的批處理文件,和sed給了一個錯誤

sed "s/#/\x37/g" 

沒有任何工作,它只是把文字X37在那裏

注意我需要這個批處理文件的工作,而不是命令行。

+0

嘗試''%%,我相信''%是一個轉義字符。轉義字符逃脫通常成爲一個單一的文字。 –

+0

非常感謝,有效! – Arthur

+3

@SteveBuzonas - 批轉義字符通常是'^',但它不適用於'%'。 '%'用於環境變量擴展,FOR變量定義和擴展以及參數擴展。 '%'文字必須在批處理腳本中以'%%'的形式轉義。 – dbenham

回答

1

%%的伎倆:

echo "foo ## bar ##" | sed 's/#/%%/g' 
+1

只是仔細檢查這是否工作,因爲你打算...單引號和雙引號可能會給你不同的結果,取決於你使用的shell – Sundeep

+0

謝謝,似乎在DOS批處理下正常工作 – Arthur