我正在編寫一個shell腳本,它將查找並替換一行以禁用nscd中的密碼緩存。問題是,在參數之前和之間存在大量的空白空間,我似乎無法用我有限的正則表達式的知識來找到一種方式來忽略空格,並將「否」更改爲「是」。sed用空格查找/替換行
下面是它在配置文件中出現的那一行。以防萬一它無法正常顯示,在enable-cache之前有8個空格,之前有12個空格,在沒有之前有10個空格。
enable-cache passwd no
我基本上只需要將該行的no改爲yes。任何人有任何想法?
感謝
格雷格
使用'sed的-i(...)file'取代'mv' – yoones
@yoones負。 'sed -i'不符合POSIX標準。請參閱http://pubs.opengroup.org/onlinepubs/007904875/utilities/sed.html –
@yoones ...如果您想要一個符合POSIX標準的工具進行現場編輯,那將是預編譯的,而不是sed 。 –