Awọn ọna 3 lati Pa Gbogbo Awọn faili rẹ ninu Itọsọna Ayafi Ọkan tabi Diẹ Awọn faili pẹlu Awọn amugbooro
Nigba miiran o wa sinu ipo kan nibiti o nilo lati paarẹ gbogbo awọn faili ninu itọsọna kan tabi sọ di mimọ nu itọsọna kan nipa yiyọ gbogbo awọn faili ayafi awọn faili ti irufẹ fifun (ti o pari pẹlu itẹsiwaju kan pato).
Ninu àpilẹkọ yii, a yoo fi ọ han bi o ṣe le paarẹ awọn faili ninu itọsọna kan ayafi awọn amugbooro faili kan tabi awọn oriṣi nipa lilo rm, wa ati awọn aṣẹ agbaye.
Ṣaaju ki a to lọ siwaju, jẹ ki a bẹrẹ nipa wiwo ni ṣoki ni ọkan pataki pataki ninu Linux - ilana apẹrẹ faili orukọ, eyiti yoo jẹ ki a le ba ọrọ wa ni ọwọ.
Ni Lainos, ilana ikarahun jẹ okun ti o ni awọn ohun kikọ pataki wọnyi, eyiti a tọka si bi awọn kaadi egan tabi awọn onitumọ metacharact:
-
* - baamu odo tabi diẹ ẹ sii awọn ohun kikọ
-
? - baamu eyikeyi ohun kikọ silẹ nikan
-
[seq] - baamu eyikeyi kikọ ni seq
-
[! seq]
- baamu eyikeyi iwa ko si ni seq
Awọn ọna ti o ṣee ṣe mẹta wa ti a yoo ṣawari nibi, ati iwọnyi pẹlu:
Paarẹ Awọn faili Ni lilo Awọn oniṣẹ Ibaramu Apẹrẹ ti o gbooro sii
Awọn oniṣẹ ti o baamu apẹẹrẹ ti o gbooro ti o yatọ ti wa ni atokọ ni isalẹ, nibiti atokọ-atokọ jẹ atokọ kan ti o ni ọkan tabi diẹ sii awọn orukọ faili sii, yapa nipa lilo ohun kikọ |
:
-
* (atokọ-apẹrẹ) - baamu odo tabi awọn iṣẹlẹ diẹ sii ti awọn ilana pàtó kan
-
? (akojọ-apẹrẹ) - baamu odo tabi iṣẹlẹ kan ti awọn ilana ti a ti sọ tẹlẹ
- + (apẹrẹ-apẹrẹ) - ibaamu ọkan tabi diẹ sii awọn iṣẹlẹ ti awọn ilana ti a ti sọ tẹlẹ
-
@ (apẹẹrẹ-akojọ) - baamu ọkan ninu awọn ilana ti a ti sọ tẹlẹ
-
! (Àtòjọ-atokọ) - baamu ohunkohun ayafi ọkan ninu awọn ilana ti a fun
Lati lo wọn, mu aṣayan ikarahun extglob ṣiṣẹ bi atẹle:
# shopt -s extglob
1. Lati pa gbogbo awọn faili inu itọsọna kan ayafi orukọ faili, tẹ aṣẹ ni isalẹ:
$ rm -v !("filename")
2. Lati paarẹ gbogbo awọn faili pẹlu imukuro orukọ faili1 ati orukọ faili 2:
$ rm -v !("filename1"|"filename2")
3. Apẹẹrẹ ti o wa ni isalẹ fihan bi a ṣe le yọ gbogbo awọn faili miiran yatọ si gbogbo awọn faili .zip
ni ibanisọrọ:
$ rm -i !(*.zip)
4. Itele, o le paarẹ gbogbo awọn faili inu itọsọna kan yatọ si gbogbo .zip
ati .odt
awọn faili bi atẹle, lakoko ti o nfihan ohun ti n ṣe:
$ rm -v !(*.zip|*.odt)
Lọgan ti o ba ni gbogbo awọn ofin ti o nilo, pa aṣayan ikarahun extglob bii bẹ:
$ shopt -u extglob
Paarẹ Awọn faili Lilo Linux wa Command
Labẹ ọna yii, a le lo wiwa aṣẹ ni iyasọtọ pẹlu awọn aṣayan ti o yẹ tabi ni ajọṣepọ pẹlu aṣẹ xargs nipa lilo opo gigun ti epo kan bi ninu awọn fọọmu isalẹ:
$ find /directory/ -type f -not -name 'PATTERN' -delete $ find /directory/ -type f -not -name 'PATTERN' -print0 | xargs -0 -I {} rm {} $ find /directory/ -type f -not -name 'PATTERN' -print0 | xargs -0 -I {} rm [options] {}
5. Aṣẹ atẹle yoo paarẹ gbogbo awọn faili yato si .gz
awọn faili ninu itọsọna lọwọlọwọ:
$ find . -type f -not -name '*.gz'-delete
6. Lilo opo gigun epo kan ati awọn xargs, o le yipada ọran ti o wa loke bi atẹle:
$ find . -type f -not -name '*gz' -print0 | xargs -0 -I {} rm -v {}
7. Jẹ ki a wo apẹẹrẹ afikun kan, aṣẹ ti o wa ni isalẹ yoo paarẹ gbogbo awọn faili laisi .gz
, .odt
, ati .jpg
awọn faili ninu itọsọna lọwọlọwọ:
$ find . -type f -not \(-name '*gz' -or -name '*odt' -or -name '*.jpg' \) -delete
Paarẹ Awọn faili Ni lilo Bash GLOBIGNORE Oniyipada
Ọna ikẹhin yii sibẹsibẹ, ṣiṣẹ nikan pẹlu bash. Nibi, oniyipada GLOBIGNORE tọjú atokọ ti a ya sọtọ oluṣafihan (awọn orukọ orukọ) lati foju si nipasẹ imugboroosi orukọ ọna.
Lati lo ọna yii, gbe si itọsọna ti o fẹ lati nu, lẹhinna ṣeto oniyipada GLOBIGNORE bi atẹle:
$ cd test $ GLOBIGNORE=*.odt:*.iso:*.txt
Ninu apeere yii, gbogbo awọn faili yatọ si .odt
, .iso
, ati .txt
awọn faili pẹlu yọ kuro ninu itọsọna lọwọlọwọ.
Bayi ṣiṣe aṣẹ lati nu itọsọna naa:
$ rm -v *
Lẹhinna, pa oniyipada GLOBIGNORE:
$ unset GLOBIGNORE
Akiyesi: Lati loye itumọ ti awọn asia ti o ṣiṣẹ ni awọn ofin loke, tọka si awọn oju-iwe eniyan ti aṣẹ kọọkan ti a ti lo ninu awọn apejuwe pupọ.
Gbogbo ẹ niyẹn! Ti o ba ni awọn imuposi laini aṣẹ miiran ni lokan fun idi kanna, maṣe gbagbe lati pin pẹlu wa nipasẹ apakan esi wa ni isalẹ.