AVJ*_*AVJ 2 linux bash symbolic-link
我有以下目录结构。
drwxr-xr-x 5 ec2-user ec2-user 4096 May 22 07:03 TEEST
drwxr-xr-x 5 ec2-user ec2-user 4096 May 24 05:33 BEE-TES
drwxr-xr-x 5 ec2-user ec2-user 4096 May 24 10:53 ONE
drwxr-xr-x 5 ec2-user ec2-user 4096 May 25 09:50 TWO
lrwxrwxrwx 1 ec2-user ec2-user 28 May 25 09:50 previous -> TWO
drwxr-xr-x 5 ec2-user ec2-user 4096 Jun 1 11:00 TEMP
lrwxrwxrwx 1 ec2-user ec2-user 28 Jun 1 11:00 current -> TEMP
Run Code Online (Sandbox Code Playgroud)
如何删除除符号链接指向的目录之外的所有目录?
{ find . -type l -exec readlink {} \; ; find . -type d -exec basename {} \; ; } | sort | uniq -u | tail -n +2 | xargs rmdir
Run Code Online (Sandbox Code Playgroud)
慢动作:
find . -type l -exec readlink {} \;
查找链接并列出相应的目录find . -type d -exec basename {} \;
查找并列出目录sort | uniq -u | tail -n +2
仅保留唯一名称(因此,那些未链接到的目录)并删除.
xargs rmdir
删除目录。替换为rm -r
以删除其内容。 归档时间: |
|
查看次数: |
2358 次 |
最近记录: |