我想通過讓python程序從文件中隨機選擇一個名稱然後將其設置爲主機名來更改linux主機名。只有當隨機數字值爲1時,該代碼纔有效。我做錯了什麼?我正在使用的代碼如下。使用python更改Linux主機名
import random
import os
import socket
contents=[]
with open("/root/Desktop/names.txt") as rnd:
for line in rnd:
line=line.strip()
contents.append(line)
name = contents[random.randint(0,len(contents)-1)]
rnd.close()
name = "hostname -b "+name
os.system(name)
hostname = socket.gethostname()
print "Hostname:", hostname
'names.txt'裏有什麼?讀取文件後,您也可以嘗試「打印內容」。 – helmbert 2013-02-18 18:03:23
'open()as rnd:... rnd.close()''''''''''''''''''''''''''不需要關閉具有上下文管理器的文件資源(aka,'with')。 – Droogans 2013-02-18 18:07:23
我需要它放在命令行中,因此os.system()是隨機選擇的名稱。 name.txt是從中隨機選擇名稱的文本文件。 – 2013-02-18 18:09:05