Asplinux cum se face și se rulează un script (fișier lot), xnix, adminstuff

Crearea și utilizarea scriptului este descrisă aici folosind exemplul de configurare a interfețelor de rețea.

[Exemplu - configurarea rețelei și a podului pe scriptul ASPLinux10]







Înainte de a rula acest script, am asigurat că interfețele rețelei mele la boot ASPLinux nu reglate (ifconfig dat numai interfață de configurare lo [loopback]). Am făcut acest lucru cu un snap-in GUI. Apoi, el a scris următorul script (/root/Desktop/network_setup.txt):

ifconfig eth0 0.0.0.0
ifconfig eth0 jos
ifconfig eth1 0.0.0.0
ifconfig eth1 jos

brctl addbr mybridge0
brctl addif mybridge0 eth0
brctl addif mybridge0 eth1

ifconfig mybridge0 loc1.loc2.11.111
ifconfig mybridge0 difuzat loc1.loc2.255.255
ifconfig mybridge0 netmask 255.255.0.0
ifconfig mybridge0 sus

ifconfig eth0 up
ifconfig eth1 sus

traseu net-net 0.0.0.0 netmask 0.0.0.0 gw loc1.loc2.0.254 dev mybridge0

Acest script la încărcat automat atunci când computerul este pornit, în fișierul /etc/rc.d/rc.sysinit în cele din urmă am o linie (trebuie doar calea script-ul și numele):






/root/Desktop/network_setup.txt

Desigur, înainte de asta am stabilit drepturile de a rula acest fișier (vezi post 97). În plus, comenzile pentru rularea scriptului pot fi inserate în fișierul /etc/rc.d/rc.local.

[Transmiterea parametrilor la scenariu]

În scenariu, este posibil să se obțină parametrii care au fost transmiși scriptului prin linia de comandă atunci când a fost rulat. De exemplu, linia de comandă a fost după cum urmează:

script_name.sh AAA BBB CCC

Apoi variabilele $ 1, $ 2 și $ 3 vor apărea automat în corpul scriptului, care va fi egal cu AAA, BBB și CCC, respectiv. Pentru detalii, consultați [1].

mysqluser = "user_name_here"
mysqlpass = "password_here"
mysqlbase = "base_name_here"

Acest exemplu adaugă trei variabile la codul: $ mysqluser, $ mysqlpass, $ mysqlbase cu valorile setate. Notă: nu puteți adăuga spații înainte și după operatorul de atribuire =, altfel scriptul nu se va executa corect.

[Verificarea valorilor variabilelor de text]

dacă ["$ 1" == "oprit"]; atunci
# aici este ramura, atunci când linia de comandă a fost trecută
.
ecou "de securitate off"
elif ["$ 1" == "on"]; atunci
# ramură, când a fost transmisă în linia de comandă
.
echo "securitate pe"
altfel
# aici este o ramificație atunci când un parametru incorect a fost trecut la linia de comandă
echo ". sec.change.sh [on | off]"
Fi

Atenție: spațiile din fața și după paranteze [], precum și în jurul operatorului de egalitate == sunt foarte importante, altfel scriptul nu va funcționa corect.







Trimiteți-le prietenilor: