Situatie
Acest lucru vă permite să utilizați scriptul pentru a face lucruri precum tipărirea corectă a numelui său, chiar dacă este redenumit. Acesta este util în situațiile de logare, în care doriți să cunoașteți numele procesului care a adăugat o intrare.
Următoarele sunt o parte din variabilele prestabilite speciale:
$ #: Câți parametri ai liniei de comandă au fost transmise scriptului.
$ @: Toți parametrii liniei de comandă au trecut la script.
$ ?: Starea de ieșire a ultimului proces rulat.
$$: ID-ul de proces (PID) al scriptului curent.
$ USER: numele de utilizator al utilizatorului care execută scriptul.
$ HOSTNAME: numele de gazdă al computerului care rulează scriptul.
$ SECONDS: numărul de secunde pentru care s-a executat scriptul.
$ RANDOM: returnează un număr aleatoriu.
$ LINENO: returnează numărul de linie curent al scriptului.
Solutie
Pasi de urmat
Salvați următoarele ca fișier text numi script.sh pentru a vizualiza toate aceste elemente într-un singur script:
#!/bin/bash
echo "$# paramentrii de comanda"
echo "Ei sunt: $@"
echo "Parametrul 1 este: $1"
echo "Scriptul se numeste: $0"
# orice proces vechi, astfel încât să putem raporta starea de ieșire
echo "pwd returneaza $?"
echo "Acest script are Process ID $$"
echo "Scriptul a fost executat de $USER"
echo "Ruleaza pe $HOSTNAME"
sleep 3
echo "A functionat timp de $SECONDS secunde"
echo "Numa aleatoriu: $RANDOM"
echo "Acesta este numarul de linie $LINENO al scriptului"
Îl facem executabil astfel:
chmod +x script.sh
Acum, îl puteți rula cu o mulțime de parametri diferiți ai liniei de comandă, așa cum se arată mai jos
Leave A Comment?