【问题标题】:How to copy multiple directories with spaces, in Linux shell如何在 Linux shell 中复制多个带空格的目录
【发布时间】:2023-03-16 09:50:01
【问题描述】:

我有一个电影目录(它们在自己的文件夹中),我只想转移其中的一部分。

为什么这不起作用?

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"

【问题讨论】:

    标签: linux shell copy wildcard


    【解决方案1】:

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

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

    这应该适用于源名称中的空格。

    $ 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
    

    【讨论】:

    • 谢谢,其次,通配符似乎不起作用。我希望我只需要输入电影名称的开头而不是整个内容。 {"Avengers Age of"*,"Die Hard A Good"*} 不起作用。 @Barmar
    • 我不确定你遇到了什么问题,它对我有用。
    猜你喜欢
    • 2012-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-14
    • 2020-07-05
    • 2020-03-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多