如何将所有文件加上隐藏文件移动到文件夹下?

如何将所有文件加上隐藏文件移动到文件夹下?

我想将 www 文件夹中的所有 drupal 文件移动到 html 文件夹。我不知道如何在终端中执行此操作,并且我不确定是否所有文件夹和文件(包括隐藏的文件夹和文件)都在 www 文件夹中,是否有一种方法可以检查不太明显的文件夹和文件,或者 www 之前是否为空任何隐藏文件都会自动重新创建吗?

答案1

使用 zsh:

mv -- *(D) html

mv会抱怨它无法移动html到自己,但仍会移动其余部分。

使用bash:

shopt -s dotglob
mv -- * html

使用 ksh93:

FIGNORE='@(.|..)'
mv -- * html

POSIXly:

mv -- * .??* .[!.] html

或者

mv -- * .[!.]* ..?* html

(对于那些不匹配的模式,您可能会收到错误。这应该是无害的,但仍然会导致退出状态非零,因此在脚本中您将无法区分移动失败文件)。

答案2

最简单的方法:

# from the www directory
cd ..
mv www html
mkdir www
mv html www/

这假设您还没有与 处于html同一级别的目录www。如果这样做,请选择一个不同的名称:

cd ..
mv www temp_name
mkdir www
mv temp_name www/html

答案3

一个幼稚的选择(不要尝试!)是:mv * .* html- 然而,这也会尝试移动...这并不是您想要的。我通常会做类似的事情mv * .??* html- 这会移动普通文件和名称中至少有 3 个字符的隐藏文件,有效地跳过...

相关内容