将文件移动到文件夹内的文件夹

将文件移动到文件夹内的文件夹

我想将文件和文件夹移动到同一文件夹内的文件夹中。以下模型为例

|-folderN
|-- folder1
|-- folder2
|-- file1

所以问题是如何将所有内容一次性从folderN (/var/www) 移动到folder2?手动移动每个文件需要很长时间,从长远来看是不可行的。

尝试过

mv -v folderN/* folder2

mv folderN/* folder2 

答案1

ls另一种使用和 的方法grep -v。该-v选项反转匹配,因此仅列出不匹配的行。

mv `ls | grep -v folder2` folder2

请注意,命令中使用的是反引号而不是单引号。

答案2

将第二个文件夹向上移动一步,移动内容,然后将第二个文件夹向后移动。就像这样:

cd folder1
mv folder2 ..
mv * ../folder2/
mv ../folder2 .

答案3

find+mv解决方案:

find folderN/ -mindepth 1 ! -wholename '*/folder2' -exec mv "{}" "folderN/folder2" \;

答案4

您报告无法将一个文件夹的内容移动到另一个文件夹?这是您尝试过的事件顺序吗?

$ ls folderN
file1 file2 folder1 folder2
$mv folderN/* folder2
mv: cannot move 'folder2 to a subdirectory of itself, `folder2/folder2`
$ls folderN/folder2
file1 file2 folder1

mv folderN/* folderN/folder2应该是您需要的唯一命令。

相关内容