Se a sua estrutura de diretórios tiver apenas 1 nível de profundidade, mv dir*/ destination
realizará essa tarefa.
Digamos que eu tenha um diretório que contenha o seguinte:
dir1/
dir2/
dir3/
...
dir50/
dir1.txt
dir2.txt
dir3.txt
...
dir50.txt
Eu tenho usado o mv dir * / someotherpath /, em seguida, movo os arquivos * .txt de volta. Existe uma maneira de mover apenas os diretórios?
Você também pode usar find
para realizar essa tarefa
find . -maxdepth 1 -type d -name "dir*" -exec mv '{}' destination/ \;
Altere o parâmetro maxdepth
ou remova-o se a estrutura do diretório tiver mais níveis
Com uma estrutura de arquivos como esta:
/dir2move2
/dir
/subdir1
/subdir2
index.js
Para mover apenas os subdiretórios e não os arquivos que você poderia fazer:
mv ./dir/*/ ./dir2move2