仅使用 mv 移动文件夹

cdr*_*rom 4 directory mv

我有一个包含文件和文件夹的文件夹。

folder/file1.jpg
folder/file2.jpg
folder/file3.jpg
folder/subfolder1/file1.txt
folder/subfolder1/file2.txt
folder/subfolder2/file1.txt
folder/subfolder3/
destination/
Run Code Online (Sandbox Code Playgroud)

我想将所有文件夹(及其内容)移动到一个新文件夹中,而不是文件。

例如。

folder/file1.jpg
folder/file2.jpg
folder/file3.png
destination/subfolder1/file1.txt
destination/subfolder1/file2.txt
destination/subfolder2/file1.txt
destination/subfolder3/
Run Code Online (Sandbox Code Playgroud)

我知道,如果我想选择我所有的 jpeg 文件(例如),我会做mv folder/*.jpg destination. 但是选择所有文件夹的命令是什么?

Luc*_*ini 11

为此,您只需要在 * 末尾包含一个附加的 / ,如下所示:

mv folder/*.jpg destination (match only jpg files) 
mv folder/* destination (match anything found)
mv folder/*/ destination  (match only the folders) 
Run Code Online (Sandbox Code Playgroud)

这只会将“文件夹”内的文件夹移动到目的地,而不是“文件夹”内的文件(注意子文件夹中的文件被移动)。