[每日一氵] linux批量删除目录下的文件夹而不删除文件
生活随笔
收集整理的這篇文章主要介紹了
[每日一氵] linux批量删除目录下的文件夹而不删除文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
給個例子吧:
思路大概是找到所有的目錄,然后用管線傳給刪除的命令
查看當前目錄下的文件和文件夾:
xxx@xxx:~/xxxx# ls lung_001 lung_015 lung_027 lung_038 lung_048 lung_001.nii.gz lung_015.nii.gz lung_027.nii.gz lung_038.nii.gz lung_048.nii.gz1. find
首先我們要先把所有的文件夾篩選出來,于是我們可以借助find指令:
find . -type d查找.(當前目錄) 種類為 d(目錄) 的所有文件(夾)
. ./lung_001 ./lung_015 ./lung_027 ./lung_038 ./lung_048當時他現在把當前目錄.(當前目錄) 也包括起來了
2. sed
接下來只要把. 過濾掉就行了,這里我們借用 sed 指令
sed -n '2,$p' -n 僅輸出符號條件的行 p 打印內容 2, $ 第2行到最后一行借助管線|,我們來過濾掉第一行.
find . -type d | sed -n '2,$p'好的第一行已經過濾掉了
./lung_001 ./lung_015 ./lung_027 ./lung_038 ./lung_0483. rm -rf
這個是刪除文件 rm -rf
4. xargs
接下來用 xargs 命令,用來組合多個命令
find . -type d | sed -n '2,$p' | xargs rm -rf這樣就可以了,刪除當前目錄下的所有文件夾,但不刪除文件
參考自:
https://zhidao.baidu.com/question/1604227242476105907.html
總結
以上是生活随笔為你收集整理的[每日一氵] linux批量删除目录下的文件夹而不删除文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 对领导期望的闭环管理
- 下一篇: 地图投影的新猜想