Sisemiste failide või kataloogide kopeerimine ja välistamine (samaväärne rsynciga - välista)

Kui paluksin teil mainida käsk kausta kopeerimiseks teise kohta, mainiksid seda peaaegu kõik cp.

Kui nüüd ütlen teile, et lisaks peate kopeerima kogu selle kausta sisu, välja arvatud 1 fail, jääksid paljud mõtlema ja teised mainiksid rsync, seejärel parameetriga –Välistada võite X-faili või kausta välja jätta ja seda mitte kopeerida. Aga ... kas teadsite, et ka cp võimaldab teil seda teha? ... O_o … Jah sõbrad, cp on oma "välista" hehe.

Näiteks on meil kaust isos mis sisaldab: ubuntu.iso, debian.iso y archlinux.iso :

Ja juhtub, et me tahame kopeerida teise kausta (distros-deb, mis on tühi) fail debian.iso y ubuntu.iso, see tähendab kõik, välja arvatud archlinux.iso

Selleks võiksime faili ja seejärel teise käsitsi kopeerida, kuid palju targem on kasutada võimalusi, mida süsteem meile pakub, eks? … 😀… näiteks selleks, et lihtsalt seda teha:

cp isos/!(archlinux.iso) distros-deb/

Ja sellest piisab, et kopeerida KÕIK, mis on isose kataloogis, distros-debi, kõik peale archlinux.iso 😉

Kuid oletame, et meil pole mitte ainult neid kolme faili, vaid meil on ka fedora.iso ja chakra.iso ... ja me tahame sama teha, see oleks ka välistatud koopiatest fedora.iso ja chakra.iso, vaatame kuidas seda teha:

cp isos/!(archlinux.iso|fedora.iso|chakra.iso) distros-deb/

Nagu näete, võib mitu faili või kausta välja jätta, eraldame need ainult toruga (|) ja asi lahenes 😀

Selle all ei taha ma öelda, et cp on kõigeks parem kui rsync ... aga mõlemad on näiteks suurepärased tööriistad ... kas teadsite parameetrit -u de cp? ... hehe, kindlasti mitte 😉

Noh, rohkem pole midagi lisada ... kas see on huvitav näpunäide? 😀

seoses


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: Miguel Ángel Gatón
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.

  1.   Nokkimine DIJO

    Ma ei teadnud seda meetodit, sa õpid alati midagi uut.
    Suurepärane näpunäide, aitäh.

    1.    KZKG ^ Gaara DIJO

      Aitäh

  2.   kroto DIJO

    Vihje on väga hea, ma ei teadnud seda! Jääb vaid Archi ja Fedora kasutajatele selgitada, miks te nende iso hehe välja jätsite

    1.    KZKG ^ Gaara DIJO

      JAJAJAJAJAJA Ma ei pannud Archi ega Fedora ISO-d, sest näites prooviti kopeerida ainult Deb distrosid ... HAHAHAJAJA.

  3.   hexborg DIJO

    Siin peame paar punkti välja tooma. Üks on see, et see töötab ainult siis, kui bashi extglob-valik on lubatud. Kui see pole nii, aktiveeritakse see selle käsuga:

    shopt -s ekstglob

    Selle saab alati aktiveerida .bashrc-faili.

    Teine punkt on see, et see trikk ei ole käsu cp valik, kuid see töötab bashi tasandil. Mis tähendab, et seda saab kasutada mis tahes käskudega. Mitte ainult cp-ga. Testi saate teha kirjutades:

    kajafailid: isos /! (archlinux.iso | fedora.iso | chakra.iso)

    Muidu on see väga kasulik trikk. Koos cu -u variandiga, mis on mulle samuti aeg-ajalt kasulik.

    1.    Daniel Rojas DIJO

      Muidugi, see on regulaarne väljend

      1.    hexborg DIJO

        See on tegelikult laiendatud muster. Regulaaravaldus on midagi muud, kuid see näeb välja. 🙂

    2.    KZKG ^ Gaara DIJO

      Jah, CP-s olev -u on tõesti huvitav. Tunnistan, et olen suur rsynci fänn ... aga ma ei tea, mul on kiindumus kehvasse CP-sse hahaha.

      Shopti aktiveerimise kohta ma ei teadnud, eeldasin, et see töötab automaatselt, aitäh vihje eest.

      Ja jah, ma kahtlustasin, et see on rohkem seotud Bashiga kui cp, kuid ma polnud veel proovinud teha rm-d, kassi vms. :)

      Tänan kommentaari eest, ma tõesti teen seda 😀

      1.    hexborg DIJO

        Mul on hea oma osa anda. 🙂

        1.    KZKG ^ Gaara DIJO

          Tegelikult olen alati olnud huvitatud regexi tundmaõppimisest ... kas te olete põnevil ja teete selle kohta algaja postituse? 😀

          1.    hexborg DIJO

            LOL !! Teil on juba olemas. 🙂 Kui õnnelik olin ilma kommentaarideta ... 🙂

            Noh, tõsi on see, et ta helistab mulle. 🙂 Kuid ma pean selle üle veel natuke mõtlema. Tundub, et seda on raske seletada.

            1.    KZKG ^ Gaara DIJO

              hahahahaha ei midagi, ära muretse, sa kommenteerid muudkui, et sa ikka õpid ahahahaha, oluline on jagada 😀


  4.   tufadoriin DIJO

    Väga hea näpunäide Sa ei lähe kunagi magama, kui pole midagi uut õppinud.

    1.    KZKG ^ Gaara DIJO

      Täpselt ja kõige parem on see, et ma õpin palju koos kommentaaridega, mille te postitustele jätate, mulle meeldib iga päev õppida kummalisi asju.

  5.   giskard DIJO

    Hea trikk. Ma ei tundnud teda 🙂

    1.    KZKG ^ Gaara DIJO

      Rõõm 😉

  6.   @Jlcux DIJO

    Aga kui paned isosid, siis mõtled panna debian.iso ubuntu.iso /! (Jne jne)? ei

  7.   Heber DIJO

    Tõepoolest, see osutus väga huvitavaks näpunäiteks. Mitte ainult artikli enda, vaid ka kommentaaride lisaväärtuse jaoks.
    Ilus <º Linuxi kogukond

  8.   KAEVU MARTA DIJO

    Teie abist pole mulle kasu olnud, peaksite tooma näite, et õpilased saaksid teie suurepärasest tehnikast paremini aru.
    Aitäh, et leidsite aega, mäletan seda lehte alati oma südames

  9.   felipe016 DIJO

    te ütlete, et jätate kataloogid vahele, aga kas näites jätate ainult failid vahele, kas teate, kuidas konkreetset kataloogi vahele jätta? Tervitades.