Hvordan starte GUI-applikasjoner fra terminalen

Anonim

Vi vet alle hvordan du starter applikasjoner fra GUI med et dobbeltklikk på ikonet eller ved å klikke på appen i Dock, og det er mange måter å gjøre det på, og de er alle relativt raske. Hvis du bruker en anstendig tid med kommandolinjen, er det fint å kunne starte Mac-apper direkte derfra også. Terminalen har også en god del applikasjoner som kjører i tekstbasert modus, men kanskje du ønsket å redigere en tekstfil i Mac OS X GUI-appen TextWrangler i stedet for den tekstbaserte nano eller vim.

Vi skal demonstrere hvordan du starter en hvilken som helst grafisk Mac-app fra kommandolinjen i MacOS X, inkludert hvordan du åpner spesifikke filer fra kommandolinjen med en GUI-app, og hvordan du redigerer og åpner disse filene med root-tilgang hvis det er nødvendig.

Åpne Mac OS X-applikasjoner fra kommandolinjen

Terminalkommandoen for å starte MacOS gui-apper kalles passende «åpen», og her er hvordan den fungerer på det enkleste:

open -a ApplicationName

Det vil åpne den definerte appen med navnet «ApplicationName».

Men åpen er mye kraftigere enn som så. Hvis du bare skriver «åpne» ved ledeteksten, vil du returnere den grunnleggende hjelpefilen med detaljer om hvordan du bruker kommandoen riktig med en rekke flagg og syntaks.

Mens åpen-kommandoen finnes i alle versjoner av Mac OS X, varierer egenskapene noe avhengig av hvilken versjon av MacOS/Mac OS X Macen kjører. Ikke desto mindre, i moderne utgivelser er dette hva du vil se:

$ åpen Bruk: åpen Hjelp: Åpne åpner filer fra et skall. Åpner som standard hver fil ved å bruke standardapplikasjonen for den filen. Hvis filen er i form av en URL, vil filen bli åpnet som en URL. Alternativer: -a Åpnes med det angitte programmet. -b Åpner med den angitte applikasjonspakkeidentifikatoren. -e Åpnes med TextEdit. -t Åpner med standard tekstredigerer. -f Leser input fra standard input og åpner med TextEdit. -F --fresh Starter appen fresh, det vil si uten å gjenopprette vinduer. Lagret vedvarende tilstand går tapt, unntatt Unavngitte dokumenter. -R, --reveal Velger i Finder i stedet for å åpne. -W, --wait-apps Blokkerer til de brukte programmene er lukket (selv om de allerede kjørte). --args Alle gjenværende argumenter sendes i argv til applikasjonens main()-funksjon i stedet for å åpnes. -n, --new Åpne en ny forekomst av programmet selv om en allerede kjører. -j, --hide Starter appen skjult. -g, --bakgrunn Setter ikke søknaden i forgrunnen.-h, --header Søker etter topptekstfilplasseringer som samsvarer med de gitte filnavnene, og åpner dem.

Med andre ord, eksempel enkel kommandosyntaks kan se slik ut, åpne "ApplicationName" med filen som ligger på banen '/file/to/open':

open -a ApplicationName /file/to/open

Du vil merke at du ikke trenger den fullstendige banen til applikasjonsnavnet, men du trenger den fullstendige banen til et filnavn.

Bruken er sannsynligvis selvforklarende for de som har erfaring i kommandolinjemiljøet, men for de som er nye i terminalen, ikke vær for forvirret, den er enkel å bruke og vi skal forklare. Hvis du for eksempel vil redigere /etc/motd med TextWrangler for å endre dagens melding, men du hater kommandolinjeredigeringene nano og vi, skriver du her:

$ åpen -a TextWrangler /etc/motd

Nå kan du redigere disse filene i det velkjente GUI. open er smart nok til å vite at når du bruker flagget -a, starter du et program, så du trenger ikke å skrive inn hele banen. Selvsagt vil den fortsatt trenge hele banen til filen du redigerer.

Det er mange andre bruksområder for åpne-kommandoen i stedet for bare å redigere tekstfiler, så bruk fantasien og vær kreativ. open kan være spesielt nyttig for systemadministratorer som bruker det i et shell-skript, kanskje for å starte et spesifikt GUI-program på et planlagt tidspunkt.

Verdt å merke seg er også at hvis du starter et program med mellomrom i navnet, vil du legge til en omvendt skråstrek etter hvert ord. Å åpne Adobe Photoshop CS vil se slik ut:

$ åpne -a Adobe\ Photoshop\ CS

Starter GUI-apper som root fra kommandolinjen

Du kan til og med åpne filer med sudo ved å bruke open-kommandoen hvis du trenger å redigere en fil som root, for eksempel:

sudo open -a TextEdit /tmp/magicfile

Dette vil starte målfilen til ønsket applikasjon som root-bruker, og gi full root-rettigheter til å redigere og endre filen, noe som er ganske nyttig for redigering av mange systemfiler. Selvfølgelig, ikke modifiser noen systemfiler hvis du ikke vet hva du gjør.

Opprette skallaliaser for ofte lanserte GUI-apper

Så det er litt vondt å skrive en full kommando gjentatte ganger, eller å skrive ut alt det om og om igjen, ikke sant? Vel, la oss gjøre det enklere ved å tilordne et alias til en applikasjon som blir ofte lansert. Vi tar den nevnte Adobe Photoshop-appen som et eksempel siden filnavnet er langt, så her er hvordan vi gjør dette med Mac OS X standard Bash-skall:

Start først profilen eller .bash_profile i et tekstredigeringsprogram:

$ nano .profile

eller

$ åpen -e .profile

Ignorerer alt annet som kan være i denne filen (den kan også være tom), legg til følgende på en ny linje:

"

alias photoshop=open -a Adobe\ Photoshop\ CS"

Dette oppretter et alias, slik at kommandoen "open -a Adobe\ Photoshop CS" nå forkortes til ganske enkelt "photoshop". Lagre .profile, og du er på vei! Du kan bruke aliaskommandoen sammen med åpen for praktisk t alt alt, bare pass på å velge et alias til en kommando som ikke allerede eksisterer.

Open-kommandoen er veldig nyttig som du kan se, hvis du har andre gode bruksområder for den i Mac OS X, sørg for å gi oss beskjed i kommentarene.

Hvordan starte GUI-applikasjoner fra terminalen