Het Maken van Aliassen en Shell-Functies van Linux

0
510
Fatmawati Achmad Zaenuri/Shutterstock.com

Maak je eigen Linux-commando ‘ s met aliassen en Bash-shell-functies. Het temmen van repetitieve taken, afkappen langdradige processen en het configureren van de standaard commando ‘ s met de opties die u altijd gebruik en de strijd om te onthouden.

Aliassen en shell-scripts zijn krachtige technieken in de Linux-en Unix-achtige operating systemen die u toelaten om te slijpen uw opdracht online ervaring te worden net wat u wilt. U kunt uw eigen commando ‘ s aangepast aan uw specifieke behoeften, en om de last van repetitieve taken.

Aliassen en shell-scripts doen het zelfde soort werk. Ze stellen u in staat om te definiëren—en naam—een set van standaard Bash shell functionaliteit die wordt dan afgelost door de naam die u heeft gegeven. Het typen van de naam is eenvoudiger en handiger dan om alle van de stappen of opdrachten elke keer dat u ze wilt gebruiken.

Het verschil tussen een alias en een script is een van de complexiteit en de schaal. Scripts zijn beter in het vasthouden van langere en meer ingewikkelde stukken code. Aliassen zijn perfect voor het houden van kortere, meer beknopte, stelt van opdrachten.

Vooraf Gedefinieerde Aliassen

Een aantal aliassen zijn vooraf voor u. Om de lijst van aliassen die gedefinieerd zijn in uw systeem, het gebruik van de alias opdracht zonder parameters:

alias

Dit zijn de aliassen die zijn gedefinieerd op het Ubuntu-test machine in dit artikel werd onderzocht op. Als ik zou gedefinieerde aangepaste aliassen, deze zou verschijnen in deze lijst ook.

Op de top van de lijst, er is een ingewikkeld ogende alias genoemd alert. We komen om dat in een moment. Er zijn een hele hoop verschillende aliassen voor het ls commando, en er is een groep van aliassen die kleur te bieden uitgang naar de familie van grep-commando ‘ s. Bijvoorbeeld met deze aliassen gedefinieerd, wanneer u:

grep

Het systeem zal interpreteren als:

grep –color=auto

Dit is een belangrijk punt met aliassen. Ze kunnen dezelfde naam hebben als bestaande commando ‘ s. Ze kunnen zelfs de oorspronkelijke opdracht bevat in zichzelf.

Hier is de definitie van het grep-alias.

alias grep=’grep –color=auto’

  • De alias commando wordt gebruikt voor het definiëren van een alias.
  • De naam van de alias wordt daarna gegeven. In dit voorbeeld is het grep.
  • Het is gelijk aan teken verbindt de naam van de alias in het lichaam van de alias. Voor iedereen, maar zeer eenvoudige aliassen, het lichaam van de alias wordt omsloten door enkele aanhalingstekens ‘.
  • Het lichaam van de alias is de sectie die wordt uitgevoerd als de alias wordt gebruikt op de opdrachtregel.

Het lichaam van deze alias gewoon roept het grep commando met de –color=auto-optie.

De waarschuwing Alias

Als een snel opzij, en zodat u weet wat het doet, wordt het signaal een alias wordt gebruikt om u te laten weten wanneer een opdracht is afgerond. Het geeft ook aan of de opdracht succesvol is uitgevoerd of niet. Het biedt een grafische systeem waarschuwing aan de bovenkant van het scherm.

Hier is een eenvoudig voorbeeld. Het sleep commando zal slapen gedurende vijf seconden., De waarschuwing alias zal vervolgens worden aangeroepen. De alias controleert het antwoord van de vorige opdracht. Het haalt de laatste opdracht van de geschiedenis. Het bepaalt of de opdracht succesvol is uitgevoerd of niet. Vervolgens presenteert de resultaten in een systeem alert.

Als de opdracht voltooid is zoals verwacht, het icoon in de system alert is een kleine terminal venster. Als de opdracht gaf een fout code, het icoon in de system alert is een rode fout-pictogram.

slaap 5; alert

Na vijf seconden zien we dit systeem waarschuwing:

De icon is een kleine terminal venster, wat betekent dat alles goed is gegaan. Laten we dat nog eens proberen met een opdracht waarvan we weten dat die mislukt:

DoomedToFail; alert

Ons systeem waarschuwing heeft nu een fout pictogram.

Het definiëren van een Triviale Alias

Zoals we hebben gezien, het definiëren van een alias, we maken gebruik van de alias van de opdracht.

We maken een pseudoniem voor de duidelijke opdracht. Onze alias genoemd zal worden cls en het zal bellen met de duidelijke opdracht.

Onze alias definitie is zo triviaal dat het niet te rechtvaardigen dat verpakt in enkele aanhalingstekens. Als het lichaam van de alias is een complexer dan dit, of als deze spaties bevat, wikkel het in enkele aanhalingstekens. Definiëren We de alias, gebruik ls om een aantal van de uitvoer in het terminal venster en gebruik daarna ons nieuwe alias cls het scherm wissen.

alias cls=helder
ls -l
cls

Het scherm is uitgeschakeld. Succes, zij het kortstondige. De alias wordt alleen overleven zo lang als deze terminal venster open blijft. Zodra het venster wordt gesloten, wordt de alias zal verdwijnen.

Dus hoe maken we onze aliassen permanent?

Het .bashrc Bestand en Aliassen

U vraagt zich misschien af waar de voorverpakte aliassen worden gedefinieerd. het is in de “.bashrc” bestand in je home-map. Dit bestand is gelezen en de opdrachten binnen het uitgevoerd wanneer u start in een interactieve shell. Dat is, wanneer u open een terminal venster.

Typ de volgende opdracht in je home map om de inhoud van de “.bashrc” bestand met syntax highlighting.

gedit .bashrc

Dit zal de kde-editor met de “.bashrc” bestand geladen is.

De gemarkeerde gebieden tonen twee gebieden waar aliassen worden gedefinieerd.

Bladeren door het document zal onthullen twee andere secties in verband met aliassen:

De eerste van deze is de definitie van de alert-alias. De tweede is een if-statement. Het vertaalt, “als de file “.bash_aliases” is, lees het dan niet.”

Als u slechts een paar aliassen die u wilt definiëren, zou je zet ze in je “.bashrc” bestand. Stop ze dan hieronder in het gedeelte met de ls-aliassen.

Als je gaat om een veel aliassen, of wilt u gewoon het idee dat je aliassen ingekapseld binnen hun eigen bestand kunt u in uw “.bash_aliases” bestand. Een voordeel van het maken van hen in uw “.bash_aliases” – bestand is, kunt u niet per ongeluk wijzigen van de instellingen in “.bashrc” bestand. Een ander voordeel is de aliassen zijn gemakkelijk gekopieerd naar de nieuwe systemen, omdat ze zijn volledig gescheiden van de “.bashrc” bestand.

Het opslaan van Aliassen in de .bash_aliases Bestand

De “.bash_aliases” bestand niet aanwezig totdat u maken. U kunt het bestand met het volgende commando:

touch .bash_aliases

Laten we het bestand bewerken en toevoegen van een aantal aliassen aan. Deze opdracht opent het “.bash_aliases” bestand in de gedit-editor.

gedit .bash_aliases

We hebben nog drie aliassen. De eerste is onze cls alias die we eerder gebruikt. De volgende is h genoemd. en het is een verkorte manier van aanroepen van de geschiedenis van de opdracht.

De derde alias heet ftc. Dit staat voor “file type tellen.”

Deze alias is meer betrokken, dus het is verpakt in enkele aanhalingstekens. Het maakt gebruik van een keten van commando ‘ s die met elkaar verbonden zijn door leidingen. Het produceert een gesorteerde lijst van de verschillende bestand extensies en directory-namen, met een aantal voor elk item in de lijst.

GERELATEERD: Hoe te Gebruiken aanbrengen op Linux

Wanneer we het hebben gered “.bash_aliases” bestand, kunnen we verwachten dat onze aliassen worden leven en toegankelijk. Dat is niet het geval. Het bestand is om gelezen te worden door de Bash-shell voor de alias definities zijn leven. Dit wordt gedaan wanneer een interactieve shell is geopend.

We kunnen ook gebruik maken van de Bash-shell built-in . om te lezen en de opdrachten in een bestand. Omdat ons “.bash_alias” bestand wordt gelezen als “.bashrc” is verwerkt, moeten we het uitvoeren van de test door te bellen “.bashrc”. Op die manier kunnen we controleren dat de “.bash_alias” bestand de naam van “.bashrc” en dat onze aliassen zijn levend en wel.

De commando ‘ s die we hebben gebruikt zijn:

gedit .bash_alias

Om het te bewerken “.bash_alias” bestand.

. .bashrc

Dit zullen lezen en de opdrachten binnen “.bashrc”, die zal roepen “.bash_alias”.

ftc

Dit zal de oproep van de ftc alias.

Onze alias reageert, wat betekent Bash heeft gelezen in beide “.bashrc” en “.bash_aliases”, en onze nieuwe aliassen zijn nu live.

U kunt nu ga je gang en voeg nieuwe aliassen aan de “.bash_aliases” bestand op als ze bij u opkomen. Als je jezelf dingen doen, meer dan een of twee keer, overweeg het maken van een alias voor.

Het Verwijderen Van Aliassen

Er is een commando voor het verwijderen van aliassen, zodat BAsh niet herkent hen, noch kunnen reageren. Verfrissend openhartig, de opdracht is genoemd unalias.

Om het te gebruiken, geef dan de naam van de alias die u wilt hebben Bash vergeten. Om Bash vergeten onze ftc-alias, gebruik unalias zoals deze:

unalias ftc

U kunt gebruik maken van unalias te verwijderen aliassen die u hebt gedefinieerd en een van de vooraf gedefinieerde aliassen.

Bij het verwijderen van de aliassen van uw systeem, gebruik dan de-a (alle) optie:

unalias -een

Bash verlies van het geheugen niet blijvend zijn, dat wel. De volgende keer open je een terminal venster, de “vergeten” aliassen terug. Echt veeg uit die u nodig hebt om ze te verwijderen van je “.bashrc” en “.bash_alias” bestanden.

Als je denkt dat je ooit zou willen dat ze terug, niet te verwijderen uit je “.bashrc” bestand. In plaats daarvan, opmerking door het toevoegen van een hekje # voor de start van elke alias lijn. Om uw “.bash_alias” bestand niet effectief, wijzigen. Als je “.bashrc” bestand niet kan zien, zal het niet lezen. Het omkeren van deze stappen voor het herstellen van uw alias is een triviale zaak.

Shell Functies

Lika aliassen, Bash-shell-functies kunnen worden gedefinieerd binnen het “.bashrc” bestand, maar het is vaak leuk om ze in hun eigen definities bestand. We noemen het “.bash_functions”, de volgende conventie gebruikt voor “.bash_aliases” bestand.

Dat betekent dat we moeten vertellen “.bashrc” bestand in te lezen, onze definities. We kunnen kopiëren en wijzigen van het fragment van code die wordt gelezen in de “.bash_aliases” bestand. Lancering gedit en laden “.bashrc” bestand met het volgende commando:

gedit .bashrc

U moet toevoegen om de gemarkeerde sectie hieronder weergegeven.

U kunt het markeren van de alias sectie en druk op Ctrl+C en vervolgens verplaatsen naar waar je wilt dat de nieuwe sectie en druk op Ctrl+V om te plakken een kopie van de tekst. Dan alles wat je hoeft te doen is de twee plaatsen waar het zegt “.bash_aliases” aan “.bash_functions.”

Wij kunnen deze wijzigingen opslaan en sluit gedit af.

Nu gaan we het maken en bewerken “.bash_functions” bestand, en zet een functie definitie in.

touch .bash_functions
gedit .bash_functions

Dit opent het leeg “.bash_functions” bestand in de gedit.

We gaan voor het toevoegen van een eenvoudige functie opgeroepen. neemt één opdrachtregel parameter, die met een cijfer. omhoog bellen cd .. dat een aantal keer. Dus, als je de opdracht

2

zou oproep cd .. twee keer en beweeg twee niveaus omhoog in de directory-boom.

Er zijn verschillende manieren om een functie te definiëren. Hier is er één:

function omhoog() {

De word-functie is optioneel. Als je een traditionalist, gebruiken, indien u geen moeite te typen, laat hem eruit.

Hier is onze gehele functie in gedit:

function omhoog() {

Dit markeert de start van onze functie definitie, en de namen van de functie-up.

niveaus=$1

Dit maakt een variabele genaamd niveaus en stelt aan de waarde van de eerste parameter. Deze parameter wordt een cijfer verstrekt door de gebruiker bij het aanroepen van de functie. De $1 betekent “eerste command line parameter.”

terwijl [ “$niveaus” -gt “0” ]; doen

Vervolgens gaan We een lus. Dit vertaalt zich als “terwijl de waarde van de niveaus is groter dan nul, wat is opgenomen in de body van de loop.”

In de body van de lus, we hebben twee opdrachten. Ze zijn:

cd ..

Een niveau omhoog gaan in de directory-boom.

niveaus=$(($niveaus – 1))

Stel niveaus om een nieuwe waarde, dat is er één minder is dan de huidige waarde.

Daarna gaan We terug naar de bovenkant van de lus, de vergelijking tussen de waarde van de niveaus en de nul is eenmaal meer. Bij concentraties van meer dan nul is, is de body van de lus wordt uitgevoerd. Als het niet groter is dan nul, wordt de lus is klaar, en we laten via het gedaan verklaring, en de functie is voorbij.

Sla deze wijzigingen op en sluit gedit af.

Dan lezen We in en voer de opdrachten uit in “.bashrc” die moet lezen in en voer de opdrachten uit in onze “.bash_functions” bestand.

. .bashrc

Kunnen We het testen van de functie te verhuizen naar een locatie in de directory-boom en het gebruik van up om terug te gaan naar een ‘hogere’ punt in de directory-boom.

de cd ./werk/backup/
2

De functie werkt. We zijn verhuisd twee directory-niveau hoger in de boom.

Te houden Met het type

Als je de opbouw van een suite van aliassen en een bibliotheek van functies, het kan moeilijk zijn om te onthouden of een bepaalde opdracht is een alias of een functie. U kunt gebruik maken van het soort opdracht om u eraan te herinneren. Het leuke hier is dat je ook te zien krijgen van de definitie.

Laten we gebruik maken van type op onze ftc-alias en onze up-functie.

type ftc
type

We krijgen een zeer nuttige herinnering van wat voor soort opdracht ieder is, samen met hun definities.

Begin Met Het Verzamelen Van

Aliassen en functies kan de snelheid van uw gebruik van de commando-regel enorm. Ze kunnen verkorten reeksen commando ‘s, en ze laten je bakken-in de opties die u altijd gebruik met standaard commando’ s.

Elke keer zie je een handige one-liner of een handige functie, die u kunt aanpassen en personaliseren, en vervolgens toevoegen aan uw “.bash_aliases” of “.bash_functions” bestanden.

LEES VERDER

  • “Wat Is Apple Arcade? Hier is Alles wat U Moet Weten
  • “Wat Is Ultra-Breedband, en Waarom Is Het In de iPhone-11?
  • “Hoe een Muis te Gebruiken Met Uw iPad of iPhone
  • “Het Gebruik van de XLOOKUP Functie in Microsoft Excel
  • “Browsers Brengen Automatische Donkere Modus Websites