2014-02-11 78 views
0
if [ "`id -u`" -eq 0 ]; then 

這是現有文件中的行,我想要改變的是0的值到1的值現在我只是想知道我將如何在python中做到這一點?
我見過其他人張貼在導入subprocess和使用subprocess.call([])張貼,但這是有點不清楚,所以我只需要有人來簡化這一點,也許我可以解釋一行代碼,我可以用它來改變某一行代碼並將該值0更改爲1,並詳細解釋如何操作,非常感謝您的幫助,非常感謝。Python如何更改文件特定行上的特定值?

+0

你知道代碼的行號嗎?或者它是您想要查找和替換的特定模式? –

+0

我剛剛檢查,它是行100 – user3295703

+0

,我想保持相同的代碼模式,我只需要將0更改爲1的值,感謝您的回覆 – user3295703

回答

1

實際上,沒有必要在python中完成它。它可以使用sed如下來實現:

sed -i 's/\(if \[ "`id -u`" -eq \)0/\11/' myfile 

這一個班輪基本上是尋找文件的具體模式,由1,其中該型樣替換0。

如果你想只行號100更換模式:

sed -i '100s/\(if \[ "`id -u`" -eq \)0/\11/' myfile 

讓我知道,如果你有一個具體的要求做的蟒蛇。我也可以爲python添加類似的代碼。該代碼也將遵循基於正則表達式的類似方法。

相關問題