删除字符串中的特定字符

皮卡丘

我目前正在编写bash脚本,并且已获取文件位置列表。但是我注意到一些文件位置在文件名中有空格,例如。:/ 1 2 3.txt在我的情况下,此类文件会影响诸如cp之类的命令的使用。使用“”并将其转义会导致在“”之后有一个空格。例如:“ / 1 2 3.txt”在文件位置前面有一个空格,我得到一个错误,指出“ cp:不能统计`/ 1 2 3.txt”:否这样的文件或目录”。是否还有其他方法用“”引用文件位置,以便可以使用cp命令?

拉杜·拉迪亚努(RaduRădeanu)

复制新文件中文件名中包含空格的所有文件,并使用相同的名称包含下划线而不是当前目录中的空格:

for f in *\ *; do cp -- "$f" "${f// /_}"; done

有关如何安全处理文件名的信息,请参见BashFAQ 20

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

TOP 榜单

热门标签

归档