簡體   English   中英

如何使用python打開文件進行讀寫? Ubuntu服務器

[英]How do I open a file using python to read and write? Ubuntu server

我想做的是編輯etc / samba / smb.conf,然后添加

[Test's Files]
 comment = Test's Files
 path = /files/test
 browsable = yes
 read only = no
 valid users = test

所有這些都是通過Python網絡應用程序完成的,該應用程序從用戶輸入中接收信息。 現在,我只想知道如何使用python將那段文本添加到文件中。

您可以在python中使用open()函數來獲取文件:

with open('path/to/file', 'w') as output_file:
   output_file.write('content')

open命令的第二個參數是mode。 可以在Python文檔網站上找到更多詳細信息。 旁注:如果在/ etc /中,則您的應用程序可能需要特殊權限才能寫入此文件。 為了限制特權提升的潛在危險,您應該使用提升的權限創建一個子進程,該子進程除了寫此文件外什么也不做,以便您的主進程具有正常的權限。

您可以在python中查看SMBCOnnection模塊。 http://pythonhosted.org/pysmb/api/smb_SMBConnection.html

我已經使用過它,這是一個與smb服務器一起工作的好模塊。

使用open('file的路徑','w')作為fileobj:fileobj.write('要寫入的文本')

上面的代碼非常容易打開,編寫和關閉文件,隱式地執行打開和關閉操作

您可以通過以下簡單方式進行操作:

with open('/etc/whatever.txt', 'a+') as file:
    file.write("""[Test's Files]
comment = Test's Files
path = /files/test
browsable = yes
read only = no
valid users = test""")

但是,如果要編輯僅root用戶可以寫入的文件,則需要注意權限。 請注意你如何打開文件的模式 如其他答案所示,它必須“ a +”不是 “ w”! 否則,您將覆蓋文件!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM