Naudokite tą patį, norėdami sumaniai kopijuoti failus & katalogus iš „Mac“ terminalo

Turinys:

Anonim

Dauguma ilgamečių komandų eilutės naudotojų naudojasi komanda cp, norėdami kopijuoti failus ir katalogus, tačiau „Mac OS X“ siūlo kitą sprendimą su komanda „ditto“. „Ditto“ yra šiek tiek pažangesnis, tačiau „cp“ gali būti naudingas dėl kelių priežasčių, nes išsaugo ne tik nuosavybės atributus ir leidimus, bet ir failų išteklių šakutes bei failų ir aplankų metaduomenis, iš esmės užtikrinant, kad failas ir (arba) aplankai būtų tiksliai nukopijuoti .

Be to, tą patį galima naudoti norint nukopijuoti failą ar aplanką į š altinio katalogą, bet jei to š altinio dar nėra, tas pats jį sukurs automatiškai. Be to, jei paskirties aplankas egzistuoja, nukopijuotas turinys bus sujungtas į tą paskirties katalogą. Galiausiai taip pat pateikiamos simbolinės nuorodos, todėl tai ypač patogu, jei dažnai naudojate komandą ln.

Kad geriau suprastumėte komandą ditto, panagrinėkime kelis pavyzdžius naudodami tikrąją sintaksę.

To paties naudojimas failams / aplankams kopijuoti

Paprasčiausia forma ta pati veikia panašiai kaip komanda cp, o pagrindinė sintaksė yra tokia:

Taigi š altinio paskirties vieta

Pavyzdžiui, jei norite nukopijuoti ~/Desktop/FluffyBackups į /Volumes/FluffyBackups/, tiesiog įveskite:

ditto ~/Desktop/FluffyBackups /Volumes/FluffyBackups/

Vėlgi, tai išsaugos visą nukopijuotų failų nuosavybės ir išteklių metaduomenų informaciją, o tai gali būti ypač svarbu, jei kopijuojate failus iš vieno naudotojo katalogo į kitą arba jei norite išsaugoti kažką panašaus į failų modifikavimo laikas.

Jei nesate tikri dėl š altinio ir paskirties turinio, visada galite palyginti juos su komanda comm arba diff prieš tęsdami komandą ditto.

To paties naudojimas katalogams ir aplankų turiniui sujungti

Atminkite, kad taip pat patikrins, ar paskirties vieta jau yra, o jei taip, sujungs š altinio katalogus su paskirties vieta. Tai svarbu ir labai naudinga, todėl tai vienas iš paprasčiausių būdų sujungti katalogus iš komandinės eilutės sistemoje „Mac OS X“ (nors dabar tai lengva ir „Finder“).

ditto ~/Pictures/Fall2015/ /Volumes/PhotoBackup/2015/

Tai paims visas nuotraukas iš „Fall2015“ ir nukopijuos jas į jau egzistuojantį katalogą „2015“, efektyviai sujungdamas turinį nuo š altinio iki paskirties vietos. Vėlgi, sujungimas įvyksta, kai paskirties vieta jau yra, o jei paskirties vietos nėra, ji būtų sukurta kaip nurodyta arba kaip š altinio pavadinimas.

Jei naudojate tą patį duomenims iš katalogų su simbolinėmis nuorodomis kopijuoti, vėliavėlė -V (visi žodiniai) yra vertinga, nes bus rodomas kiekvienas nukopijuotas failas ir simbolinė nuoroda. Pastaba -V skiriasi nuo -v, kuri rodys tik failus kaip išvestį, o ne simbolines nuorodas.

Kopijuoti be metaduomenų naudojant tą patį

Jei dėl kokių nors priežasčių nenorite kopijuoti metaduomenų ir išteklių šakučių, naudokite –norsrc vėliavėlę, pvz.:

ditto -V --norsrc ~/Sample/Folder /Volumes/NoMetadataBackups

Naudojant vėliavėlę –norsrc prarandamas pagrindinis to paties pranašumas, tačiau kai kuriais atvejais ji gali būti naudinga.

Daug daugiau apie puikią komandą „ditto“ galite sužinoti perskaitę jos vadovą, pasiekiamą „Mac OS X“ įvesdami:

man taip pat

Kaip įprasta, naudokite rodyklių klavišus, norėdami naršyti aukštyn ir žemyn vadovo puslapyje.

Prieš labai pasitikėdami tuo, būtinai išbandykite kelis kartus su nenuosekliais failų perkėlimais ir katalogų suliejimu, kad suprastumėte, kaip tai veikia su planuojamu naudojimu.

Naudokite tą patį, norėdami sumaniai kopijuoti failus & katalogus iš „Mac“ terminalo