因此,我开始在学习bash的测试环境中取得一些体面的进展。我仍然非常了解基本面,并且现在谷歌搜索了大约一个小时。在括号内使用BASH变量{}
我想创建基本上所有部分的变量,所以它很容易改变 - 从目录到文件路径名。
**
My current code:
parent_directory='/home/local/test_scripts'
directory_name='app_ms'
directory_output='1..4'
file_name='test'
file_output='log,out'
file_repeat='1..10'
mkdir -p $parent_directory $parent_location/$directory_name{directory_output};
touch $parent_directory/$parent_location/$directory_name{directory_output}/$file_name{file_output} $file_name{file_output}.{file_repeat}
**
直到当我unclude括号的点 - {} file_repeat,一切都按我预期它。
理想情况下,我想输出来表示:
**mkdir -p /home/local/test_scripts /home/local/test_scripts/app_ms{1..4}
touch /home/local/test_script/app_ms{1..4}/test.{log, out}
touch /home /local/test_script/app_ms{1..4}/test.{log, out}.{1..4}**
TL; DR:有什么想对括号内创建多个文件时,我错过?当我在里面调用一个变量时,当我使用变量调用方法时,它只创建一个名为“app_ms {1..4}”的目录。如果我直接输入它,它将创建app_ms1,app_ms2,app_ms3和app_ms4,并在文件夹内创建所需的所有文件。
BashPitfalls#33:http://mywiki.wooledge.org/BashPitfalls#for_i_in_.7B1...24n.7D – 2015-02-12 04:39:04
BTW,你”这里还有其他一些与引用问题有关的错误。通过http://shellcheck.net/运行你的代码是一个好主意。 – 2015-02-12 04:40:25