我想創建一個腳本來自動編譯Apache。可悲的是,在我的工作中,我需要編譯每個安裝的apache。
所以,我想出了這個小代碼來運行一個命令:python上運行命令
print("Source location %s" % source_location)
print("Configure command %s" % configure_command)
config = subprocess.Popen(configure_command, stdout=subprocess.PIPE, shell=True)
(output, err) = config.communicate()
config_status = config.wait()
print("Return configure status = %s" % config_status)
目前我卡上的配置部分。
基本上configure行是這樣的:
/Volumes/nirvash/script/workarea/httpd-2.2.31/configure前綴=/TMP /阿帕奇-2.2.31-INSTANCE1 --enable- mods-shared = all --enable-proxy --enable-proxy-connect --enable-proxy-ftp --enable-proxy-http --enable-deflate --enable-cache --enable-disk-cache - enable-mem-cache --enable-file-cache --with-included-apr --with-mpm = worker
問題是,當apache編譯時,它會創建(mkdir)「include 「目錄裏面的httpd-2.2.31。但在這種情況下,該目錄是在我的腳本的bin目錄中創建的。
因此,腳本正在運行時創建目錄。
可以解決這個問題嗎?有沒有辦法在編譯的目錄中運行configure?