Co je to skript Shell?
Skript shellu je skript založený na Linuxu, ve kterém se zapisují příkazy. Když uživatel spustí skript, všechny příkazy, které jsou ve skriptu, jsou provedeny jeden po druhém. Představte si to takto:Máte úkol, ke kterému musíte napsat určitý počet příkazů, a je obtížné tyto příkazy napsat a provést jeden po druhém.
Chcete-li tento úkol dokončit, jednoduše napíšete všechny příkazy do jediného skriptu a soubor skriptu někam uložíte. Když pak uživatel potřebuje provést určitou úlohu, stačí spustit uložený skript a úloha je hotová, aniž by musel znovu psát všechny příkazy jeden po druhém. Shell je interpret příkazů, které uživatel zapisuje.
Jak napsat skript Shell?
K napsání jednoduchého skriptu použijeme jeden z vestavěných editorů v Ubuntu. Toto funguje na jakékoli nejnovější verzi Ubuntu vč. Ubuntu 20.04 a Ubuntu 22.04. Editor se nazývá ‚Nano‘ a skripty shellu mají příponu „.sh“. Přípony souborů na Linuxu jsou volitelné, ale je dobrým zvykem pojmenovávat skripty shellu s příponou „.sh“.
Nyní, úplně na začátku, musíte do okna terminálu napsat „nano“, abyste otevřeli textový editor.
nano
To je obvykle již nainstalováno v Ubuntu.
Výše uvedený příkaz otevře editor Nano, který bude vypadat nějak takto:
Skript obvykle začíná #!/bin/bash tak to musíš nejdřív napsat. Seznam příkazů tedy vypadá následovně:
#!/bin/bash echo "welcome" ls echo "this is the whole list of dir"
Až budete s výše uvedenými příkazy hotovi, stiskněte CTRL + X pro uložení skriptu a ukončení. Poté vás systém požádá o potvrzení a poté vás požádá o napsání názvu souboru. Soubor uložím jako „directories.sh“. Bude to vypadat takto:
Stiskněte „y ” pro potvrzení.
Poté se editor ukončí a uloží váš skript.
Až sem budete mít úspěšně vytvořený jednoduchý skript, nyní má skript výchozí oprávnění rw – -r- -r (první příznak je pro aktuálního uživatele, druhý je pro skupiny uživatelů a třetí je pro ostatní) . Formát oprávnění se skládá z binárních čísel, která představují oprávnění. Základní oprávnění jsou 4 2 1.
- Oprávnění ke čtení-čtení je přiděleno 4
- Oprávnění k zápisu je přiděleno 2
- Povolení ke spouštění je přiřazeno 1
Chcete-li tedy spustit skript, který jste uložili, musíte změnit jeho oprávnění na 7 7 4. Konceptem je, že pokud chcete dát rwx (čtení, zápis, spouštění), budete muset přidat 4 (čtení)+2 (write)+1(execute), což bude součet 7. takže oprávnění tohoto skriptu musí být 774, aby jej uživatel mohl spustit.
Nastavte skript Shell jako spustitelný
Oprávnění konkrétního souboru můžete zkontrolovat následujícím příkazem:
ls - l directories.sh
Chcete-li nyní změnit oprávnění skriptu, který jste uložili, budete muset do terminálu napsat následující příkaz:
sudo chmod 774 directories.sh
Po stisknutí klávesy enter se vás zeptá na heslo aktuálního uživatele, po zadání hesla změní oprávnění k souboru.
Nyní ke spuštění skriptu stačí napsat „./nameofscript“ .
./directories.sh
V důsledku spuštění skriptu získáte něco takového. Nyní, pokud jste pečlivě dodrželi všechny kroky a jak bylo uvedeno výše, vytvořili jste skript a úspěšně jej provedli.
Snadný přístup ke skriptu Bash pomocí aliasů
Pro snazší automatizaci skriptu vytvoříte alias pro skript, který jste vytvořili.
Nejprve musíte vytvořit soubor s názvem .bash_aliases ve vaší domovské složce. Do terminálu budete muset zadat následující příkaz:
touch .bash_aliases
Jakmile je vytvořen, otevřete soubor pomocí příkazu:
nano .bash_aliases
Po zadání výše uvedeného příkazu se Nano otevře a bude vypadat takto.
Poté budete muset napsat:
alias dir= ".directories.sh"
Tímto způsobem se uloží alias vámi vytvořeného skriptu a tento alias ušetří uživateli námahu při psaní „./script.sh“ pokaždé, když potřebujete spustit skript.
Takže poté, co vytvoříte alias, vše, co musíte udělat, je napsat „dir“ do terminálu a skript se spustí.
Takže, to je konec článku, probrali jsme téměř vše o shellových skriptech. Pokud budete pečlivě dodržovat všechny kroky a jak je popsáno v pokynech, úspěšně vytvoříte svůj první jednoduchý skript. Nyní víte, co je to shell skript, víte, jak vytvořit skript, znáte systém oprávnění souborů a víte, jak vytvářet aliasy. Tak hodně štěstí při vytváření dalších skriptů, které vám pomohou.