Hvordan lage bash -dress deg bedre

Hvordan lage bash -dress deg bedre
Bash har et enkelt standardoppsett som er flott, men du vil kanskje ha mer! Mange datamaskinbrukere unngår kommandolinjen, fordi det er vanskelig å bruke. Dette er en misoppfatning. Kommandolinjen har en læringskurve, den krever litt kunnskap for å komme i gang. Imidlertid, de du kjenner noen få ting, er det raskere og ofte enklere. Etter å ha lært noen få grunnleggende kommandoer, er den absolutt essensielle ferdigheten å lese dokumentasjon. Dette høres kanskje ikke ut som en ferdighet, men det er det. Årsaken er at dokumentene er generiske, de vil ikke svare på ditt spesifikke spørsmål, du må utlede svaret fra informasjonen du har. Når du starter miljøet, har systemet filer som kontrollerer hva standardverdiene dine vil være i mange applikasjoner vil bli angitt. For bash har du flere filer som kontrollerer dette. Disse filene i en sekvens og bare hvis andre ikke eksisterer.

Hva kan du endre?

Masse ting, men endringene du først vil merke. Du har også aliaser og miljøvariabler. Mange av disse er satt til å sikre at du bruker riktige biblioteker og kjørbare filer når du kjører applikasjoner. Filene kontrollerer og legger til funksjoner i skallet, et eksempel er historien. I bash har du en historiefil som inneholder de siste kommandoene du har lagt inn. Du kan velge om du vil at historien skal holde duplikater og hvor stor filen blir. Det er mange flere ting du kan kjøre. Et fint eksempel på verktøy er tilgjengelig fra bash-it.

Hvor er det lagret?

Dette virker som en enkel liste over noen få filer som kjøres når du starter. På grunn av måten Bash starter, er det imidlertid noen få komplikasjoner. Den ene er at du vil ha noen innstillinger for systemet og noen for hver gang du åpner et skall. Filen /etc /profilen kjøres under pålogging, merk at den ofte ringer /etc /profil.d/* for å angi spesifikke verdier. På Ubuntu setter den snap -stiene, både for hvor binærene er og hvor XDG ringer applikasjoner. Denne filen er systemomfattende, så ikke bruk den til personlige innstillinger. For systemomfattende filer du også har etc/bash.Bashrc, denne filen heter /etc /Bashrc utenfor Debian -baserte distribusjoner. Administratoren setter, forhåpentligvis tilregnelig, standard for alle brukere på systemet. Hvis du ikke er enig i disse innstillingene, kan du overstyre dem i ~.Bashrc, for den spesielle brukeren.

Jeg vet at du kan være både bruker og administrator! Den neste filen du må vurdere er ~/.profil, dette kjører ved innlogging, ikke når skallet starter. Det starter også bare hvis .bashprofile eller .Bashlogin eksisterer ikke. Standardversjonen sjekker hvilket skall som skal kjøres. Når .profilfilen kjøres, den starter ~/.Bashrc hvis det eksisterer. ~/.Bashrc -fil er der du bør angi aliaser og andre personlige innstillinger. To andre filer er interessante, ~/.Bashlogout og ~/.Inputrc, førstnevnte kjører på Logout. Det tømmer konsollen, som standard. Mer interessant er InputRC -filen. Her endrer du nøkkelbindinger og nøkkelstrøk. Du kan angi hvordan du redigerer på kommandolinjen. Standard er EMACS -stilredigering, men du kan endre det til VI -stil.

Noen eksempler på endringer å gjøre.

Oppdater hurtig ... For å få hurtig til å se penere ut eller for å formidle mer informasjon, kan du endre verdiene til PS1. Først kan du sjekke hvilken verdi du allerede har.

$ ekko $ PS1

Resultatet ser litt kryptisk ut med mindre du har satt den til en streng. Prøv det:

$ Ps1 = "kul ledetekst!""

Dette er ikke veldig nyttig, du kan i stedet angi verdier som informerer deg om hva som skjer i systemet ditt. Her er en kort tabell med noen verdier:

\ u Nåværende brukernavn
\ h Nåværende vertsnavn
\ w Gjeldende arbeidskatalog
\ S Navnet på skallet
\ t Tid i 24-timers format

Som en utfordring, sett din anmodning om å ha brukernavnet og vertsnavnet, riktig merket med ampersand. Du kan også bruke systemdefinerte variabler og til og med utdataene fra skript. Angi et fargeskjema ... du kan ha utdataene dine i farger, og har også forskjellige farger for hver type filer. Først må du lage en fargerik ledetekst. Fargen kan endre seg gjennom hele hurtig. For å starte en ny farge, legg til '\ e [x, ym' och stoppa med '\ e [m. Her er et eksempel.

$ Ps1 = "\ e [0; 35m \ u@\ h \ e [m \ e [0; 32m \ d \ a \ e [m \ $>"

Umask, hvordan det fungerer ... I skallet har du en innstilling som heter 'Umask', det angir hvordan filer tillatelser er satt når du oppretter dem. Den vanligste verdien er 022. Dette gjør at filer har tillatelser som lar brukere lese og skrive, og alle andre kan bare lese. På denne måten må du endre nye skriptfiler til kjørbare som en egen handling. Dette er en trygg måte å håndtere filer på.

Funksjonsdefinisjoner ... du kan også innlemme funksjoner, formatet til disse kan være posix kompatible eller bash. Hvis du planlegger å veksle mellom skjell, kan du slå opp hvordan du kan være kompatibel. Du kan også kjøre et skript i ledeteksten.

#!/bin/bash
# Lsbytesum - Antall byte i en katalogliste
TotalBytes = 0
for byte i $ (ls -l | grep "^ -" | awk 'skriv ut $ 5')
gjøre
TotalBytes = $ TotalBytes+$ byte
Ferdig
TotalMeg = $ (Echo -e "\ n $ TotalBytes/1048576 \ nquit" | BC)
ekko -n "$ totalmeg"

Hvis du har koden over (kreditt til TLDP), kan du ringe den i ledeteksten din (PS1). For å sette det til dette i Bashrc.

$ Ps1 = "[\ u@\ h: \ w (\ $ (lsbytes) mb)] \ $"

Du kan selvfølgelig kjøre det manuelt for å se om du liker det først. Det er ingen farger i denne stilen, du må kombinere mange forskjellige innstillinger.

Når du har bestemt deg for hva du vil, må du legge verdiene i din .Bashrc -fil.

Konklusjon

Bash har mange funksjoner som du kan bruke for å få miljøet til å løpe bedre. Du kan gjøre mange jobber raskere hvis du har lært hvordan du kan være effektiv. En måte er å lage aliaser, en annen er å lage dine egne skript. Det kan være veldig gunstig for effektiviteten din, hvis du tar deg tid til å klatre forbi den første barrieren.