Brug ditto til at kopiere filer & mapper intelligent fra Mac-terminalen

Indholdsfortegnelse:

Anonim

De fleste langvarige kommandolinjebrugere er afhængige af cp-kommandoen til at kopiere filer og mapper, men Mac OS X tilbyder en anden løsning med 'ditto'-kommandoen. Ditto er lidt mere avanceret, men kan være fordelagtigt at 'cp' af flere årsager, da det ikke kun bevarer ejerskabsattributter og tilladelser, men også filressourcegafler og fil- og mappemetadata, hvilket i det væsentlige sikrer, at filen og/eller mapperne kopieres nøjagtigt.

Yderligere kan ditto bruges til at kopiere en fil eller mappe til en kildemappe, men hvis denne kilde endnu ikke eksisterer, vil ditto automatisk oprette den. Hvis destinationsmappen findes, vil det kopierede indhold også blive flettet sammen i den destinationsmappe. Endelig følger ditto også symbolske links, hvilket gør det særligt praktisk, hvis du er en stor bruger af kommandoen ln.

For bedre at forstå ditto-kommandoen, lad os gennemgå et par eksempler med ægte syntaks.

Brug ditto til at kopiere filer/mapper

I sin enkleste form fungerer ditto meget ligesom cp-kommandoen, med grundlæggende syntaks som følger:

dittil kildedestination

For eksempel, hvis du vil kopiere ~/Desktop/FluffyBackups til /Volumes/FluffyBackups/, ville du bare skrive følgende:

ditto ~/Desktop/FluffyBackups /Volumes/FluffyBackups/

Igen, dette vil beholde alle ejerskabs- og ressourcemetadatadetaljer for de kopierede filer, hvilket kan være særligt vigtigt, hvis du kopierer filer fra en brugermappe til en anden, eller hvis du vil bevare noget som f.eks. ændringstider for filer.

Hvis du er usikker på kilde- og destinationsindholdet, kan du altid sammenligne de to med comm-kommandoen eller diff-kommandoen, før du fortsætter med ditto-kommandoen.

Brug ditto til at flette mapper og mappeindhold

Husk, ditto vil kontrollere, om destinationen allerede eksisterer, og hvis den gør, vil den flette kildens biblioteker til destinationen. Dette er vigtigt og ekstremt nyttigt, hvilket gør det til en af ​​de nemmeste måder at flette mapperne fra kommandolinjen i Mac OS X (selvom det også er nemt nu i Finder).

ditto ~/Billeder/Fall2015/ /Volumes/PhotoBackup/2015/

Dette ville tage alle billeder fra "Fall2015" og kopiere dem til den allerede eksisterende mappe "2015", og effektivt flette indholdet fra kilden til destinationen. Igen opstår fletteadfærden, når destinationen allerede eksisterer, hvis destinationen ikke eksisterer, vil den blive oprettet som angivet eller som kildenavnet.

Hvis du bruger ditto til at kopiere data fra mapper med symbolske links, er det værdifuldt at bruge flaget -V (verbose all), fordi det vil vise alle filer og symbolske link, der er blevet kopieret. Bemærk -V er anderledes end -v, som kun viser filer som output og ikke symbolske links.

Kopier uden metadata med ditto

Hvis du af en eller anden grund ikke ønsker at kopiere metadata og ressourcegafler, kan du bruge –norsrc-flaget som sådan:

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

Brug af –norsrc-flaget besejrer ligesom en primær fordel ved ditto, men det kan være nyttigt i nogle tilfælde.

Du kan lære meget mere om den fremragende ditto-kommando ved at læse dens manualside, som er tilgængelig i Mac OS X ved at skrive:

mand ditto

Brug som sædvanlig piletasterne til at navigere op og ned på manualsiden.

Før du stoler på ditto meget, skal du sørge for at prøve det et par gange med ubetydelige filflytninger og mappesammenlægninger for at forstå, hvordan det fungerer med din planlagte brug.

Brug ditto til at kopiere filer & mapper intelligent fra Mac-terminalen