1
1
…将运行其内容四次,第一次是
注意变量引用周围的双引号?这样做几乎总是一个好主意,否则shell将根据空格(或任何在
另外,请注意,这将遍历/c/Projects/mainproject中的文件和子目录。如果只需要子目录,请使用以下命令:
添加的尾部斜杠将其限制为仅匹配目录(因为目录路径末尾的斜杠有意义,但普通文件路径末尾的斜杠没有意义)。但是请注意,后面的斜杠也会包含在结果路径中。
另外,当你使用
…如果失败(这是因为路径加倍问题),它将不会打印“Now inside…”消息,而是继续处理其他所有内容。您应该使用以下内容:
…这将退出功能,而不是盲目地继续在错误的地方。 顺便提一下 shellcheck.net 善于发现这些常见问题;我建议您通过它运行脚本,至少在您更熟悉shell脚本之前是这样。 |
2
1
要循环浏览目录中的文件,需要提供一个可以 expanded to a filename glob . 一旦你有了它,你的循环变量将包含整个路径,所以不需要前缀原始目录名。
你也可以用
|
3
1
一个脚本对于这个问题似乎杀伤力过大,可以使用
你不需要这么做
|
Batavia · Bash-删除大目录中的文件 1 年前 |
stackbiz · 如何在bash中将所有换行符替换为“\n” 1 年前 |
Paul · Bash wait命令忽略指定的进程ID 2 年前 |