Zen*_*Zen 1 shell shell-script
我需要制作一些作者姓名的目录。单独做这些事情很容易。我可以简单地
mkdir "Mario Luis Garcia"
Run Code Online (Sandbox Code Playgroud)
这将创建一个名为“Mario Luis Garcia”的目录
但是当尝试使用 shell 脚本进行大量操作时,我失败了。
for i in "Mario Luis Garcia" "etc.";
do
mkdir $i
done;
Run Code Online (Sandbox Code Playgroud)
这将创建 4 个单独的目录,而不是 2 个。我尝试使用{},()将引用的文本括起来。不起作用。
怎么做?
您需要用双引号引用变量扩展:
mkdir "$i"
(使用单引号'$i'会创建一个名为 的目录$i)
如果名称可以以 开头-,则还应--在最后一个选项参数后添加,表示所有其他参数都不是选项,这意味着在这种情况下它们是目录名称:
mkdir -- "$i"
或者,使用选项-v(详细),例如:
mkdir -v -- "$i"