如何在 Linux shell 中复制带空格的多个目录

How to copy multiple directories with spaces, in Linux shell

我有一个电影目录(它们在自己的文件夹中),我只想传输其中的一些。

为什么这不起作用?

movie*表示一个目录

cp -r {movie*, otherMovie*} "/var/media/store n go"

"cp: can't stat '{movie*,': No such file or directory"
"cp: can't stat 'otherMovie*}': No such file or directory"

不要在逗号后加上 space,这样会阻止处理大括号。所以它正在寻找匹配 {movie*,(文件名开头有文字 {)和 othermovie*}(文件名末尾有 })的文件。

cp -r {movie,otherMovie}* "/var/media/store n go"

这应该与源名称中的 space 一起使用。

$ touch "Avengers Age of Ultron" "Die Hard A Good Day"
$ echo {"Avengers Age of"*,"Die Hard A Good"*}
Avengers Age of Ultron Die Hard A Good Day