我以前试过。我发誓我以前能够发出这样的命令:
mv /home/user/temp1/* /home/user/temp2
基本上,我从这里得到了这个命令:https://superuser.com/questions/273254/move-files-and-folders-recursively-in-linux
知道它为什么告诉我
mv: cannot stat `/home/user/temp1/*': No such file or directory
答案1
我能想到发生这种情况的两个可能原因:
- 源目录可能不存在(或)
- 源目录可能为空
如果都不是,请忽略!
答案2
您需要使用$USER
用户扩展您的用户名。/home/user
仅当您有名为的用户时才有效。如果和存在于您的主目录中,user
这将起作用temp1
temp2
mv /home/$USER/temp1/* /home/$USER/temp2
答案3
我会尽力提供帮助并消除一些困惑:
如果你想移动文件夹和将其内容复制到另一个,请输入:
mv ~/Scripts ~/Podcasts
如果你想移动文件夹的内容,但不是文件夹本身复制到另一个文件夹,则必须输入,例如 。
mv ~/Scripts/* ~/Podcasts
您可以输入echo ~/Scripts/*
以检查文件夹的内容(如果您还需要了解
globstar
,这将允许您递归遍历所有目录级别,请参阅本文和这个。可以使用 shopt -s globstar 启用它,但需要将其放入 .bashrc 中才能永久工作。)
(tilde
~/Scripts 中的 ~ 会被/home/mike/
shell 自动扩展为 或您的用户名)