![]() |
1
2
更简单的解决方案是使用就地编辑选项
我们在上面做什么
也就是说,在您的原始脚本中,我看到了如下变量
再次做
具有以下含义: [ word splitting ] 如果您有包含空格甚至新行的非标准文件,则会产生不想要的结果。你能做的是
注:
对于
|
![]() |
2
1
我想澄清一下我在评论中看到的关于分词和文件名扩展的一些事情。
使用变量赋值时,引用
Bash Reference Manual
,只执行以下扩展:颚化符扩展、参数扩展、命令替换、算术扩展。这意味着变量中实际上只有一个星号
这就是在分配给变量时不必引用的原因。
现在,当你使用你的变量
这意味着文件名扩展已经完成 之后 变量扩展和分词。因此,通过文件名扩展扩展扩展的文件不会被IFS拆分!因此,以下代码可以正常工作:
并正确输出:
显然,这是一个较短的版本
|
|
Batavia · Bash-删除大目录中的文件 1 年前 |
![]() |
stackbiz · 如何在bash中将所有换行符替换为“\n” 1 年前 |
![]() |
Paul · Bash wait命令忽略指定的进程ID 2 年前 |