Programmering

10 vigtige OS X kommandolinjetips til strømbrugere

For de fleste afslappede brugere er OS X-kommandolinjen, der er adgang til via Terminal-appen, mindst lige så mørk og skræmmende som Windows Command Prompt, der kun skal bruges i tider med ekstrem nød. For disse brugere er dette normalt, når noget er gået uforklarligt galt, og det at skrive kryptiske kommandoer i prompten synes det eneste håb om en kur. Selvfølgelig genstarter de sandsynligvis faktisk en lanceret tjeneste eller sletning af en plist fil.

For dem, der er fortrolige med Unix-skallen, er kommandolinjen eller terminalen et kraftfuldt værktøj, der kan bruges til at lette mange systemfunktioner og interaktioner. Fordi OS X er bygget op omkring en BSD-kerne, kan du overføre dine smarte one-liners og springe de besværlige GUI-værktøjer over til at gøre enkle ting som at gå et katalogtræ, slette alle filer, der er ældre end 30 dage eller trække en liste med filer i det aktuelle bibliotek, der indeholder en bestemt tekststreng. Selvom grafiske grænseflader kan forenkle mange opgaver, kan de også komplicere andre opgaver - og kommandolinjen kommer til undsætning.

OS X har skjulte perler, som selv strømbrugere måske ikke kender til. Her er en liste over 10 praktiske hjælpeprogrammer, der giver dig mulighed for at udføre mange funktioner på din Mac fra kommandolinjen. Du bør finde dem alle nyttige og i mindst ét ​​tilfælde endda underholdende.

1. pbcopy og pbpaste: Kopier og indsæt til / fra udklipsholderen

Det pbcopy og pbtaste hjælpeprogrammer arbejder sammen, hvilket giver adgang til og fra systemets udklipsholder / pasteboards fra kommandolinjen. Hvis du f.eks. Vil liste alle filerne i et bibliotek, der starter med bogstavet "f" og lægge listen i udklipsholderen, skal du skrive følgende:

$ ls f * | pbcopy

Boom - dette output kan derefter indsættes i enhver GUI-app.

Det omvendte fungerer som du kunne forvente. Hvis du har den liste over filer på udklipsholderen fra en anden app, kan du behandle den på kommandolinjen med pbpaste:

$ pbpaste | grep foo

Det bruger grep kommando til kun at udtrække de linjer, der indeholder strengen foo.

Hvis dit arbejde bringer dig ind på kommandolinjen sammen med GUI-apps, kan disse to kommandoer helt sikkert komme til nytte.

2. rsync: synkroniser filer eller mapper

Det rsync hjælpeprogram kan synkronisere katalogtræer mellem mapper på det samme system eller mellem mapper på et lokalt og et eksternt system. Det er uhyre nyttigt og har været en bastion af IT i mange år. Det er også inkluderet i OS X.

Hvis du har brug for at holde to katalogtræer identiske ved hjælp af rsync på det lokale system er trivielt:

$ rsync -av / sti / til / katalog1 / / sti / til / katalog / 2 /

Dette vil sikre, at alle filer i / sti / til / katalog1 / også findes i / sti / til / katalog2 /. Hvis du vil gøre telefonbøgerne nøjagtigt identiske, skal du instruere rsync for også at slette filer i / sti / til / katalog2 / som ikke findes i / sti / til / katalog1 /:

$ rsync -av - slet / sti / til / katalog1 / / sti / til / katalog2 /

Hvis du ikke vil have de filer, der er anført under synkronisering, skal du fjerne v flag:

$ rsync -a - slet / sti / til / katalog1 / / sti / til / katalog2 /

Eller hvis du vil se, hvilke filer der kopieres eller slettes, skal du tilføje en n:

$ rsync -avn - slet / sti / til / katalog1 / / sti / til / katalog2 /

Du kan også bruge rsync mellem forskellige systemer, så længe det eksterne system har det rsync installeret og kører SSH:

$ rsync -av --delete / sti / til / katalog1 / bruger @ fjernsystem: / sti / til / katalog1 /

Bemærk, at den bageste skråstreg er vigtig her. Det indikerer det rsync er at læse filer inden for kildekataloget og synkronisere dem inden for destinationsmappen. Undlad det bageste skråstreg, og rsync kopierer (tilføjer) kildekartoteket til destinationskataloget og opretter et ekstra katalogniveau, som du måske ikke har tænkt dig.

For at aktivere SSH-adgang på en Mac skal du åbne Systemindstillinger, gå til Deling og vælge Fjernlogin. Derefter kan du rsync til Mac via SSH, eller brug SSH til at oprette forbindelse til en shell på systemet.

3. ditto: Kopier eller flet mapper eller arkiver

Det ditto kommando ligner overfladisk rsync, men i virkeligheden er det et meget andet værktøj. Det har været inkluderet i OS X i nogen tid, men er stadig relativt ukendt.

Synes godt om rsync, ditto kan bruges til at kopiere katalogtræer, bevare tilladelser, ejerskab og metadata. Dermed:

$ ditto / sti / til / kilde / sti / til / destination

Hvis destinationsmappen ikke findes, ditto laver en nøjagtig kopi af kildekataloget der. Hvis destinationsmappen findes, ditto vil flette kildekataloget med destinationen og overskrive duplikerede filnavne. For eksempel kan du bruge ditto at flette indholdet af to store kataloger med billeder i en enkelt indlejret biblioteksstruktur.

Men ditto går længere, da det også kan oprette, udtrække og manipulere CPIO (Copy In, Copy Out) og Zip-arkiver. Du kan angive en dokumentliste (bom), der dokumenterer det ditto vil bruge til selektivt at kopiere eller flette, have ditto udelade metadata under filkopierne eller endda instruere ditto at reducere universelle binære filer til en bestemt arkitektur under en operation.

Det ditto værktøj er et ret komplekst værktøj, der kan være meget praktisk, når det bruges korrekt, men det kan også tage nogle eksperimenter for at forstå det fuldt ud.

4. tmutil: Sikkerhedskopier og gendan med Time Machine

Apples Time Machine-funktion er yderst nyttig til at give brugerne en måde at opretholde løbende sikkerhedskopier af deres computere til et eksternt drev såsom et NAS eller USB-drev. Når det er sagt, kan "Star Wars" -grænsefladen være besværlig, når strømbrugere prøver at navigere i sikkerhedskopier, og kontrollerne i Systemindstillinger er ret spartanske.

Heldigvis tmutil er der for at udfylde hullerne, når du har brug for det.

For eksempel, mens Time Machine GUI viser dig den seneste sikkerhedskopi, hvis du vil vise alle tilgængelige sikkerhedskopier, skal du køre følgende:

$ tmutil listbackups

Du får vist en liste over alle tilgængelige sikkerhedskopier af det aktuelle system. For at se den seneste sikkerhedskopi skal du blot indtaste følgende:

$ tmutil seneste sikkerhedskopi

Du kan også bruge tmutil for at starte og stoppe sikkerhedskopier, sammenligne sikkerhedskopier med hinanden, analysere mængden af ​​skift mellem sikkerhedskopier, arve sikkerhedskopier, der muligvis er lavet fra et ældre system, vise oplysninger om sikkerhedskopieringsdestinationer, tilknytte og adskille backupdestinationer og endda gendanne filer fra en sikkerhedskopi.

Dybest set er alle de backup-relaterede opgaver, som en strømbruger mangler i GUI, i tmutil. Hvis du er i alvorlig trængsel og har brug for at grave dybere ned i sikkerhedskopier for at rette noget, kan det være en livredder.

5. fs_usage: Vis filsystemaktivitet

Hvis du nogensinde har været i en position, hvor din disk smider, og du vil have et hurtigt kommandolinjekig på, hvilke systemprocesser der forårsager uroen, fs_usage har din ryg. Dette værktøj giver en konstant strøm af information i realtid om, hvilke processer der har adgang til filsystemet.

Som standard, fs_usage undtager et par processer fra output, herunder Terminal og Secure Shell (sshd). Du kan løbe fs_usage i Terminal som sådan:

$ sudo fs_usage

Hvis du bruger et andet terminalprogram, skal du undtage det fra output med -e kontakt:

$ sudo fs_usage -e iTerm

Ovenstående fritager begge dele fs_usage og iTerm-appen fra output.

Ud over at give en systemomfattende visning, fs_usage kan profilere individuelle processer, såsom Google Chrome:

$ sudo fs_usage "Google Chrome"

6. drutil og hdiutil: Brænd cd'er og dvd'er og manipuler diskbilleder

Hvis du nogensinde har ønsket at brænde en data-DVD eller lyd-CD hurtigt og nemt, drutil er for dig. Med det kan du brænde et katalogtræ til en CD med en enkelt linje:

$ drutil burn / path / to / folder

Hvis du vil brænde en lyd-cd, skal du blot henvise til en mappe fuld af lydfiler:

$ drutil burn -lydio / sti / til / mappe

Dette værktøj kan også være nyttigt til sletning af CD-RW-medier med slette kommando (drutil slet / sti / til / mappe). Med bulkerase kommando, det sletter en CD-RW-disk, skubber den ud og venter på, at en anden indsættes, skylles derefter og gentages.

Det hdiutil hjælpeprogram er noget relateret, i det hdiutil bruges til at manipulere diskbilleder. Du kan bruge hdiutil at oprette et Apple-diskbillede (dvs. en DMG-fil) fra en biblioteksti:

$ hdiutil opret -srcfolder / sti / til / filer / myfiles.dmg

I El Capitan kan du brænde ISO-billeder til cd'er med følgende kommando:

$ hdiutil burn /path/to/file.iso

Det hdiutil værktøj har også mange andre funktioner, såsom montering og afmontering af billeder, konvertering af billedformater, oprettelse af krypterede billeder og verificering af billeder.

7. system_profiler: Rapporter systemoplysninger

Når du debugger problemer eller undersøger et system, er det praktisk at kunne få en rapport om alle relevante oplysninger om hardware og software, der er i brug. Det er hvad system_profiler gør det, og det udsender den rapport til en tekstfil for nem læsning.

For de fleste formål er basisrapporten tilstrækkelig:

$ system_profiler -detailLevel basic> report.txt

Dette giver dig masser af data på systemet, fra grundlæggende som CPU, RAM, grafik og lagring til serienummer, hardware UUID, netværksoplysninger, RAM-slotspopulation, netværksoplysninger, strøminfo, printersoftware, USB, Thunderbolt og Time Machine backup information.

Det er en one-stop-shop for alle de data, du muligvis har brug for på en bestemt Mac. Dette er især praktisk, når du prøver at foretage fejlfinding af problemer med et eksternt system, som du ikke har adgang til, f.eks. Når mor eller far ringer med et uforklarligt problem.

8. tjære, gzip, bzip2og lynlås: Opret og åbn komprimerede arkiver

I Unix-verdenen tjære (forkortelse for "båndarkiv") blev oprindeligt brugt til at kopiere filer til backupbånd i et standardiseret format.

I dag bruger vi ikke længere tjære på samme måde. Vi bruger det til at oprette arkiver med individuelle filer eller mapper. Ansat sammen med kompressionsværktøjer gzip og bzip2, tjære lader os oprette komprimerede arkiver af filer. Resultatet svarer til et Zip-filarkiv, der bruges på Mac, Windows og andre platforme.

At oprette en gzippet tjære arkiv af en mappe, vi kan køre:

$ tar zcpf myfiles.tgz / sti / til / filer

Dette vil skabe myfile.tgz, som er et gzipped tjærearkiv med alle filerne i den refererede sti. Hvis vi vil bruge bzip2, vi får muligvis et mindre arkiv, men det kan tage længere tid at komprimere og dekomprimere:

$ tar jcpf myfiles.tbz / sti / til / filer

Og vi kan altid bruge almindelig zip:

$ zip –r myfiles.zip / sti / til / filer

For at åbne en gzipped tar-fil kører vi denne kommando:

$ tjære zxf myfiles.tgz

For at åbne en bzippet (bzip2) arkiv, kommandoen er følgende:

$ tar jxf myfiles.tbz

Og for Zip-arkiver er kommandoen pakke ud:

$ unzip myfiles.zip

Du får måske bedre kilometertal ud af tjære og gzip eller bzip2 end lynlås for nogle filtyper, men advares om, at Windows-brugere ikke kan åbne arkiverne uden specifik software, mens zip-filer åbnes automatisk i moderne Windows-versioner.

9. mdfind: Udfør kraftige Spotlight-søgninger

OS X har haft Spotlight-søgning i årevis. Spotlight indekserer filer på din disk og giver mulighed for avanceret søgning efter metadata, filtype, filindhold og mere. Heldigvis er Spotlight-søgninger også tilgængelige på kommandolinjen via mdfind.

Dette fungerer nøjagtigt som Spotlight-værktøjet i Finder, men det er mere fleksibelt i søgetyper, og det returnerer alle de fundne data. For eksempel returnerer følgende kommando bogstaveligt talt alt, der er indekseret af Spotlight, der indeholder nøgleordet foobar:

$ mdfind "foobar"

Du kan også søge i alle metadata, såsom filtype:

$ mdfind "kMDItemContentType == 'com.microsoft.word.doc'"

Du kan søge efter filtype med nøgleord:

$ mdfind "kind: pdf Brødostsalami"

Du kan endda søge baseret på tidsramme:

$ mdfind -onlyin ./tmp/ 'kMDItemFSContentChangeDate> = $ time.today (-2)'

GUI til Spotlight-søgning er bestemt praktisk til enkle søgninger, men hvis du virkelig prøver at gennemsøge din lagring efter filer, mdfind kan være en bedre indsats.

10. sige: Få din Mac til at læse en fil for dig

Det sige kommando kan være nyttig for dem, der har brug for lydassistance på grund af handicap, men det kan også være meget sjovt. Dette værktøj gør, hvad du kunne forvente: Det oversætter tekst til tale. På det mest basale er det meget nemt at bruge:

$ sig "Hej verden"

Du får en stereotyp robotstemme, der siger "Hej verden." Det stopper dog ikke der. Der er 64 forskellige stemmer at vælge imellem på en række forskellige sprog. I nogle af de fremmede stemmer vil engelsk tekst blive sagt i en tilnærmelse af en højttaler med dette sprogs engelske accent. Du kan se en liste over alle stemmerne med denne kommando:

$ sig -v '?'

Når du har valgt en passende stemme, kan du have det sige, godt, sig noget på kommandolinjen eller i en normal tekstfil. Inkluder --interaktiv flag og sige fremhæver ordene, når de læses højt:

$ sig -v Vicki -f myfile.txt --interaktiv

Du kan endda indstille den hastighed, hvormed tekst læses tilbage, og hvis destinationssystemet er korrekt konfigureret, kan du have sige læse tilbage tekst på et eksternt system.

Macens GUI gør det meste nemt, og det er et behageligt sted at bruge din tid. Men der er mere til Mac end det smukke ansigt. Når GUI'en virker for begrænset eller for langsom, kan det være lettere for dig at åbne terminalen og trykke på styrken på kommandolinjen. Ud over disse 10 væsentlige ting skal du tjekke de 20 OS X kommandolinjehemmeligheder i den tidligere artikel.

$config[zx-auto] not found$config[zx-overlay] not found