我想通過服務器列表循環,而不是手動輸入文本文件中的每一個,我想使用表達式。問題與表達For循環 - Bash
實施例:
[[email protected] ~]$ for i in server{001..010} ; do echo $i ; done
server001
server002
server003
server004
server005
server006
server007
server008
server009
server010
產生期望的結果。然而,當我把服務器{} 001..010成txt文件,並嘗試做同樣的事情,這是行不通的:
[[email protected] ~]$ cat server_test2.txt
server{001..010}
[[email protected] ~]$ for i in `cat server_test2.txt` ; do echo $i ; done
server{001..010}
正如你可以看到它實際上並沒有辦理表達我喜歡它的方式。
任何想法如何從txt文件外推多行服務器使用表達式方法? {001..010}
操作順序。命令替換的輸出不是大括號擴展的。 – 2015-02-24 19:29:49
請參閱http://stackoverflow.com/questions/9337489/bash-curly-brace-expansion-with-variable-for-mkdir – chrisinmtown 2015-02-24 19:33:01
此處列出了擴展順序:https://www.gnu.org/software /bash/manual/bashref.html#Shell-Expansions – 2015-02-24 19:36:17