小编Kar*_*arl的帖子

在 BusyBox shell 中用空格重命名文件

我正在尝试通过 SSH 重命名 Synology Diskstation 上的一些文件。可用的外壳是 BusyBox 内置外壳:

BusyBox v1.16.1 (2013-04-16 20:13:10 CST) built-in shell (ash)
Run Code Online (Sandbox Code Playgroud)

当我尝试在源文件名或目标文件名中使用空格字符时,移动命令总是会产生两个错误。转义空格字符或引用文件名似乎没有效果。

在目标中使用空格字符重命名文件的示例:

/volumeUSB1/usbshare/directory $ touch test
/volumeUSB1/usbshare/directory $ ls
test
/volumeUSB1/usbshare/directory $ mv test 'te st'
mv: can't rename 'test': No such file or directory
mv: can't rename 'te': No such file or directory
/volumeUSB1/usbshare/directory $ mv test te\ st
mv: can't rename 'test': No such file or directory
mv: can't rename 'te': No such file or directory
Run Code Online (Sandbox Code Playgroud)

重命名源文件中带有空格字符的文件会产生类似的结果:

/volumeUSB1/usbshare/directory $ touch 'te st' …
Run Code Online (Sandbox Code Playgroud)

shell busybox rename whitespace move

5
推荐指数
1
解决办法
3709
查看次数

标签 统计

busybox ×1

move ×1

rename ×1

shell ×1

whitespace ×1