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:

  1. * - baamu odo tabi diẹ ẹ sii awọn ohun kikọ
  2. ? - baamu eyikeyi ohun kikọ silẹ nikan
  3. [seq] - baamu eyikeyi kikọ ni seq
  4. [! 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ọ | :

  1. * (atokọ-apẹrẹ) - baamu odo tabi awọn iṣẹlẹ diẹ sii ti awọn ilana pàtó kan
  2. ? (akojọ-apẹrẹ) - baamu odo tabi iṣẹlẹ kan ti awọn ilana ti a ti sọ tẹlẹ
  3. + (apẹrẹ-apẹrẹ) - ibaamu ọkan tabi diẹ sii awọn iṣẹlẹ ti awọn ilana ti a ti sọ tẹlẹ
  4. @ (apẹẹrẹ-akojọ) - baamu ọkan ninu awọn ilana ti a ti sọ tẹlẹ
  5. ! (À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ẹ.


Gbogbo awọn Ẹtọ wa ni ipamọ. © Linux-Console.net • 2019-2024