"mv" all the stuffs excluding sth

hustnzj發表於2022-09-16

After some experiments, my test-project directory end up in a mess as below:

➜  test-projects git:(daily) ✗ ll
total 88
drwxr-xr-x  18 administrator  staff   576B Sep  9 13:07 R2
drwxr-xr-x  11 administrator  staff   352B Sep 16 10:18 bare-repo-experiments
drwxr-xr-x   9 administrator  staff   288B Sep  6 10:55 central-repo.git
-rw-r--r--   1 administrator  staff    12K Sep  9 13:05 file.bundle
drwxr-xr-x  16 administrator  staff   512B Sep  1 15:04 johns-repo
drwxr-xr-x  18 administrator  staff   576B Sep  3 19:59 marys-repo
drwxr-xr-x  16 administrator  staff   512B Sep  1 10:54 marys-repo-bak
drwxr-xr-x  20 administrator  staff   640B Sep 16 07:31 my-git-repo
drwxr-xr-x  15 administrator  staff   480B Sep  1 11:35 my-git-repo-bak
drwxr-xr-x  16 administrator  staff   512B Sep  6 10:55 my-website
-rw-r--r--   1 administrator  staff    30K Sep  6 10:55 my-website.tar
drwxr-xr-x  19 administrator  staff   608B Sep 12 11:21 repo
drwxr-xr-x  11 administrator  staff   352B Sep 12 21:05 repo.git
drwxr-xr-x  20 administrator  staff   640B Sep 12 21:31 repo2
drwxr-xr-x  16 administrator  staff   512B Sep 12 11:21 repo_m.git
drwxr-xr-x  11 administrator  staff   352B Sep 12 21:06 repo_mi.git

Now I want to have a clean directory but keep all the stuffs. So I want to move all the stuffs into a new subdirectory named first-round. How to do it?

First, I create a directory.

mkdir first-round

Now we can use mv source … directory to accomplish this task, but typing all the stuffs is overly burdensome. Could I move all the stuffs to a specific directory excluding itself?

Yes. The answer is the ‘^’ Glob pattern.

In zsh, we need append this line to ~/.zshrc:

setopt extended_glob

In bash, we need append this line to ~/.bashrc:

shopt -s extglob

Then restart the terminal, run

mkdir first-round && mv ^first-round first-round

The directory is clean now:

➜  test-projects git:(daily) ✗ ll
total 0
drwxr-xr-x  18 administrator  staff   576B Sep 16 13:33 first-round
本作品採用《CC 協議》,轉載必須註明作者和本文連結
日拱一卒

相關文章