Luo omat komentosarjat bashilla

Oppiminen Linux

Riippumatta siitä, mitä Linux-jakelua käytämme, ― epäilemättä siitä, että suosikkini on Ubuntu― heti, kun ryhdymme tämän järjestelmän käyttöön, varma automaatiotarpeet. Eli: luo meidän omia komentoja jotka suorittavat tiettyjä komentoja henkilökohtaisella tavalla. Tämä tarve voi johtua tietyistä syistä:

  • Yksinkertaista syntaksia tavallisista komennoista.
  • Tee toimia, jotka kattavat kaikki tarvetta, jota ei ennakoida järjestelmässä toimintakykyinen.
  • Järjestysjärjestykset jonka toistamme uskoisesti.

Vaikka bash-komentosarja voidaan ajaa mistä tahansa hakemistosta, se on yleensä luo hakemisto isännöimään näitä komentosarjoja. Minun tapauksessani:

$ mkdir /home/pedro/.bin

Uskon tämän hakemisto (piilotettu johtamalla piste nimen edessä) pitämään kaikki siellä käyttämäni komentosarjat. Hakemiston nimen piilottamisella ei ole muuta merkitystä kuin - ellei nimenomaisesti toisin mainita - ei tule näkyviin, kun tiedostoja katsellaan / home / pedroa graafisessa tilassa.

Nyt sinun täytyy ilmoita Linuxille, että sen pitäisi myös katsoa sinne (/home/pedro/.bin) tilaukset, jotka suoritetaan päätelaitteelta.

$ PATH=$PATH;/home/pedro/.bin

Tällä tavalla järjestelmä etsii tilauksiamme siellä kunnes lopetamme istunnon. Jotta tämä yhdistys olisi pysyvä:

$ sudo nano /etc/environment

ja lisäämme

:/home/pedro/.bin

PATH-rivin lopussa on erittäin tärkeää unohtaa kaksoispiste ennen hakemiston osoitetta, jonka sisällytämme, koska tämä on lisäysmekanismi.

Ensimmäinen askel askeleelta käsikirjoituksemme

Luomme tiedostomme, kuten minun tapauksessani:

$ touch ~/.bin/donde

Ja voit muokata sitä käyttämällä haluamaasi muokkausohjelmaa tai seuraamalla tätä ohjetta:

$ gedit ~/.bin/donde &

Ja lisäämme seuraavan sisällön:

#!/usr/bin/env bash

if [ $# -lt 1 ];
then
    echo "Necesitas pasar un parámetro"
else
    whereis $1
fi

Komentosarjan analyysi

Ensimmäinen puhelulinja «jittu»(#! / Usr / bin / env bash) pyydä Linuxia raportoimaan missä bash-kuori sijaitsee ja että seuraava tapahtuu Bashin vaatimusten mukaisesti. Tämä varotoimi se on kätevää varmistaa skriptimme toimivat missä tahansa asennuksessa. Toinen mahdollinen jittu hän nauroi:

#!/bin/bash

Niiden välinen ero voi olla hyvin outo, ja selitän sen. Tässä viimeisessä Oletan sen järjestelmässämme bash-kuori on / bin / bash-osoitteessa. Kuitenkin, jos ehdotan käsikirjoituksessa En tiedä missä se on bashin tulkki. Pyydän järjestelmää antamaan kyseisen osoitteen.

Kolmas rivi: Kuten näette, toinen rivi on if. Bashille merkit «$#« sisältää komentoriviltä välitettävien parametrien määrän. Siksi »jos [$ # -lt 1];» kirjaimellisesti tarkoittaa "jos parametrien määrä on alle 1".

Neljäs rivi: Sitten (kirjaimellisesti käännettynä englannista: sitten), tässä osoitetaan, että mitä tulee seuraavaksi suoritetaan kun arvioidaan ehtoa if olla totta: toisin sanoen parametrien lukumäärä on pienempi kuin 1, eli nolla.

Viides rivi: Jos suoritamme komentosarjamme ilman parametreja, terminaalissa näkyy «Sinun on välitettävä parametri».

Kuudes rivi: Ilmaisee, että seuraava tapahtuu kun ilmoittamamme ehto ei ole totta.

Seitsemäs rivi: Se Suorita komento «missä on« mukana sisältö, jonka olemme välittäneet ensimmäinen parametri.

Kahdeksas rivi:fi»Ilmaisee, että lohko päättyy if.

Testataan käsikirjoitustamme

On tärkeää, lisää kirjoitusoikeudet käsikirjoitukseen:

$ chmod -x ~/.bin/donde

Ilman tätä näyttöön tulee virhe "lupa evätty".. Sen jälkeen voimme suorittaa komentosarjamme.

$ donde php

Sen pitäisi näyttää meille php-binaarien sijainti, niiden lähdetiedostot ja man-sivut. Jotain sellaista:

php: /usr/bin/php7.0 /usr/bin/php /usr/lib/php /etc/php 
/usr/share/php7.0-readline /usr/share/php7.0-json /usr/share/php7.0-opcache 
/usr/share/php7.0-common /usr/share/php /usr/share/man/man1/php.1.gz

Kertaus

  • Otamme käyttöön a ".bin" -hakemisto komentosarjojemme sijoittamiseksi.
  • Me tarjoamme tietoja Linuxille tämän hakemiston sisällyttämiseksi komentohakuunsa.
  • Luomme käsikirjoituksemme.
  • Ero eri jittu.
  • Käyttö parametrilla $ # välitetty parametrien määrä.
  • Käyttö ensimmäinen parametri kanssa $1.

Toivon ja toivon, että tämä käsikirjoitus on sinulle hyödyllinen.