我想将 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 个字符的隐藏文件,有效地跳过.
和..