Slik tilpasser du zsh-ledeteksten i macOS-terminalen

Viktige takeaways

  • macOS lar deg tilpasse zsh-ledeteksten i Terminal for å få den til å skille seg ut og passe til dine preferanser.
  • Opprett en .zshrc-profil for å lagre alle endringene og innstillingene du ønsker i zsh-ledeteksten.
  • Endre zsh-ledeteksten ved å legge til ønskede verdier for variabler som %n (brukernavn), %m (Mac modellnavn), %W (dato) og %T (tid).

Enten du vil at zsh-forespørselen skal bruke en annen farge, vise tilleggsdetaljer eller bruke et minimalt utseende for å få det beste ut av plassen, lar macOS deg gjøre det. Lær hvordan du tilpasser zsh-ledeteksten i Terminal for å få den til å skille seg ut uavhengig av bakgrunnen din.

Grunnleggende om zsh-prompten

Når du åpner Terminal-appen på Mac-en, viser den noe nyttig informasjon, som siste pålogging og ledeteksten. Dette er hvordan ledeteksten vanligvis ser ut som standard:

 Last login: Wed Feb 3 22:00:40 on console
alvin@MacBook-Air ~ %

zsh-ledeteksten viser en tekststreng som består av brukernavnet og datamaskinens modell, som MacBook Air, MacBook Pro, Mac mini og så videre. Tilden (~) indikerer ledetekstens plassering i hjemmekatalogen.

Hvis du navigerer til en annen katalog i filsystemet via Terminal, vil gjeldende katalogs navn vises i stedet for tilden.

Opprett en Z Shell-profil for å lagre alle innstillinger

Vanligvis må du tukle med systemfiler for å endre standardutseendet. Det er fordi macOS-oppdateringer tilbakestiller alle systemfilene til standard, og du vil miste alle endringene du gjør. Så du kan opprette en spesifikk innstillingsfil (kjent som en dotfile) for zsh-profilen din for å lagre alle endringene og innstillingene du ønsker i zsh-ledeteksten.

Du finner ikke denne punktfilen som standard på macOS, så du må lage en. Det anbefales å opprette en ny .zshrc-profil for å lagre alle innstillinger, som hvordan zsh-prompten ser ut og oppfører seg. Slik oppretter du zsh-profilen (dotfile):

  Slik aktiverer du Dashboard i macOS Mojave
  • Åpne Terminal-appen.
  • Skriv inn følgende kommando og trykk på Retur-tasten:
     touch ~/.zshrc 
  • Berøringskommandoen vil bare opprette .zshrc-profilfilen hvis den ikke allerede eksisterer. Hvis den allerede eksisterer, vil ikke kommandoen gjøre noe.

    Det vil opprette en .zshrc-profil i brukerkontoens hjemmekatalog. Du kan se den under /Bruker//-banen i Finder hvis du har aktivert visning av skjulte systemfiler på Mac-en.

    Etter det vil zsh-profilen være tilgjengelig for interaktive skall som ikke er pålogget hver gang du starter Terminal. Den vil imidlertid bare brukes for påloggingsskall hvis andre påloggingsspesifikke filer som .zprofile og .zlogin ikke er til stede.

    Tilpasse zsh-prompten i terminalen

    Vanligvis inneholder standard zsh-ledeteksten informasjon som brukernavn, maskinnavn og plassering som starter i brukerens hjemmekatalog. Disse detaljene er lagret i zsh-skallets systemfil på /etc/zshrc-stedet:

     PS1="%n@%m %1~ %#" 

    I denne strengen med variabler:

    • %n er brukernavnet for kontoen din.
    • %m er Mac-ens modellnavn.
    • %1~ betyr gjeldende arbeidskatalogbane, der ~ fjerner $HOME-katalogplasseringen.
    • % # betyr at ledeteksten vil vise # hvis skallet kjører med root (administrator) privilegier og % hvis det ikke gjør det.

    For å gjøre endringer i standard zsh-ledeteksten, må du legge til relevante verdier for at ledeteksten skal vises annerledes enn standardmeldingen.

    Slik går du frem. Åpne Terminal, skriv inn følgende kommando og trykk Retur:

     nano ~/.zshrc 

    Hvis .zshrc-profilfilen eksisterte før, er det en sjanse for at den ikke er tom. Men hvis den ikke eksisterte da du kjørte berøringskommandoen ovenfor, vil den være tom. Du kan legge til en ny linje med teksten PROMPT=’…» eller PS1=’…» og inkludere relevante verdier i ellipsene.

    For en enkel endring av zsh-ledeteksten kan du skrive inn disse verdiene i .zshrc-profilen:

     PROMPT='%n:~$' 

    Trykk Ctrl + O for å bekrefte å gjøre disse endringene i filen, og trykk deretter Ctrl + X for å avslutte nano-editoren.

    Åpne et nytt terminalvindu ved å trykke på Cmd + T for å bekrefte og se endringene du nettopp har gjort. Din nye zsh-ledetekst vil vise Mac-ens brukernavn, hjemmekatalog og $-symbolet på slutten. Du kan legge til mellomrom i PROMPT-variabelen ovenfor mellom %n, ~ og $ hvis du foretrekker variablene plassert i terminalen.

      Hva er Avast Firewall og hvordan det hjelper å sikre Windows, macOS?

    Hvis du ønsker å ha et tilpasset brukernavn, erstatt %n med ditt foretrukne valg. Her er et eksempel:

     PROMPT='customusername~$' 

    Nå, hvis du åpner et nytt terminalvindu, vil du se følgende:

    Hvis du ønsker å endre en hvilken som helst annen parameter manuelt, kan du gjøre det ved å erstatte standardvariablene ved å bruke formatet i PS1-variabelen ovenfor. Du kan inkludere eller fjerne informasjon fra zsh-ledeteksten for å passe dine preferanser.

    Hvis dette høres for komplekst ut, bruk et nettsted som Zsh promptgenerator for å hjelpe deg med å tilpasse Z-skallet ditt.

    Legg til dato og klokkeslett i zsh-ledeteksten

    Bortsett fra brukernavnet ditt, kan du legge til gjeldende dato eller klokkeslett, slik at du ikke trenger å se bort fra det aktive terminalvinduet for å sjekke den informasjonen.

    Start terminalen og åpne .zshrc-profilen:

     nano ~/.zshrc 

    For å inkludere datoen i ledeteksten, kan du bruke %D for at datoen skal vises i formatet åå-mm-dd eller %W for at den skal vises i formatet mm/dd/åå. Deretter vil den nye ledeteksten vises slik:

     PROMPT='%n:%W:~$' 

    Vi brukte et kolon (:) i PROMPT-variabelen ovenfor for å legge til visuell separasjon, men du kan bruke mellomrom eller noe annet. For eksempel bruker vi større enn-tegnet (>) for å skille tiden og gjeldende katalog.

    Hvis du vil inkludere systemtiden i zsh-ledeteksten, legg til %T for gjeldende klokkeslett i 24-timers format, %t for at tiden skal vises i 12-timers format, eller bruk %* for å vise klokkeslettet i 24-timersformatet. -timeformat sammen med sekunder.

     PROMPT='%n@%T>~$' 

    Vis dato og klokkeslett til høyre for zsh-ledeteksten

    For å vise informasjon til høyre for zsh-ledeteksten, må du legge til RPROMPT-variabelen i zshrc-filen. For å legge til dato og klokkeslett, skriv inn følgende:

    RPROMPT='%D @ %T'

    Din forespørsel vil nå se slik ut:

    Legg til farge i tekst i zsh-ledeteksten

    Bortsett fra å endre Terminal-appen med farger, kan du legge til litt farge til teksten på zsh-profilen din på Mac for å få en fin visuell pause. Start Terminal og åpne .zshrc-profilen:

     nano ~/.zshrc 

    Z-skallet støtter farger og nyanser av grått til ledeteksten for å utfylle bakgrunnen. Du kan velge en forgrunnsfarge (tekst) fra disse valgene: svart, hvit, gul, grønn, rød, blå, cyan og magenta. Slik bruker du dem:

     PROMPT='%F{cyan}%n%f:~$' 

    Hvis du vil velge en bestemt zsh-fargenyanse, kan du velge mellom 256 8-bits farger som terminalen støtter. Slik bruker du de numeriske verdiene til fargene:

     PROMPT='%F{51}%n%f:~$' 

    Du må plassere %F og %f standard forgrunnsfargevariabler mellom den relevante teksten du ønsker å fargelegge.

      Hvilke apper lever i macOS Utilities-mappen?

    Legge til visuelle effekter i zsh-ledeteksten

    Hvis det ikke er nok å fargelegge forespørselens tekst, kan du markere zsh-forespørselen for å få den til å skille seg ut blant tekstveggen. Til å begynne med kan du fet zsh-ledeteksten:

     PROMPT='%B%F{51}%n%f%b:~$' 

    Hvis du legger til %B i starten og legger %b på slutten mellom den relevante teksten, blir den fet.

    På samme måte kan du sette %S i starten og %s på slutten for å markere teksten. Høydepunktet vil ha samme farge som du har valgt mellom %S og %s variablene.

     PROMPT='%S%F{51}%n%f%s:~$' 

    Du kan også understreke teksten i zsh-ledeteksten. For å legge til en understreking i en ledetekst, kan du inkludere %U-variabelen i starten og %u på slutten av den relevante teksten.

     PROMPT='%U%F{51}%n%f%u:~$' 

    Fjern de siste påloggingsopplysningene fra zsh-prompten

    Å skjule eller deaktivere den øverste linjen som avslører siste påloggingstid i Terminal-appen kan gi zsh-meldingen et renere utseende. Du kan bruke følgende kommando for å skjule denne informasjonen:

     touch ~/.hushlogin 

    Neste gang du åpner Terminal, vil du ikke se noe over zsh-ledeteksten.

    Tilbakestill din zsh-tilpasning

    Hvis du trenger en ny start, kan du gjøre det ved å sette PROMPT- eller PS1-variabelen til standardverdien:

     PROMPT="%n@%m %1~ %#" 

    Hvis du la til informasjon til høyre for zsh-ledeteksten ved hjelp av RPROMPT, slett den fra .zshrc.

    Alternativt kan du trygt slette PROMPT/PS1- og RPROMPT-variablene i .zshrc-filen. Ikke bekymre deg, for innstillingene i .zshrc-filen gjelder kun for gjeldende brukerprofil. Hvis du sletter de to, vil standardinnstillingene som er lagret i Z shells systemfil på /etc/zshrc bli brukt.

    Nå som du har alle detaljene om hvordan du tilpasser zsh-prompten, eksperimenter litt og gjør den til din egen. Du kan fet, understreke, forkorte og til og med inkludere mer informasjon i den. Og hvis du ikke er fornøyd med endringene, kan du alltid gå tilbake til standardutseendet raskt.