2010-05-10 121 views
0

我正在嘗試編寫一個shell腳本來備份網站,我已經通過vhosts中的每個目錄並創建一個新目錄vhosts/{siteurl}/private/backups/,並將該網站gzip到那裏。從文件中讀取變量

但是,我也希望它從private中讀取一個包含數據庫名稱,用戶名和密碼的文件。所以我可以使用這些來執行mysqldumpprivate/backups/

問題是,我從來沒有寫過shell腳本,所以我不知道如何將可變數據讀入我的腳本,或者我應該如何格式化要讀取的文件。

希望這是足夠的信息。

+1

你想它是'bash','python'還是...?你有什麼偏好? – pajton 2010-05-10 15:08:08

回答

1

如果文件的格式爲name=value並且正在運行bash或sh,則可以使用.來讀取和執行文件的內容。

vars.txt

foo=123 
bar=456 

script.sh

. ./vars.txt 
echo "$foo * $bar" 
+0

如果我把一個命令如'find。 -type f -mtime +30 -exec rm -f {} \;'到'vars.txt'它也會被執行嗎? – ianbarker 2010-05-17 09:26:23

+0

這是正確的,正如'退出'會立即關閉shell。 – 2010-05-17 11:13:32

+0

謝謝你,太棒了 – ianbarker 2010-05-17 12:11:14