jak spustit Shell Script (soubor. sh) v Linuxu?

Shell Bash a Bash je hlavní součástí správy systémů Linux. Příkazy běží na bash za účelem dokončení úkolů nebo úloh. Tyto příkazy mohou být uloženy v souboru, který se nazývá shell skript. Skript shell Se používá ke spuštění jednoho nebo více příkazů pouhým voláním souboru skriptu shell bez psaní příkazů znovu a znovu. Skripty shellu mají příponu*. sh pro Bash nebo Sh. V tomto tutoriálu se naučíme, jak spouštět soubory skriptů shell různými způsoby.

Vytvořte skript shellu nebo soubor skriptu

před spuštěním souboru skriptu shellu vytvoříme soubor skriptu. Stačí vytvořit textový soubor s příponou *.sh. Pak do něj vložte nějaké příkazy shellu. V tomto příkladu vytvoříme shell skript s názvem systeminfo.sh .

hostnamectlecho "This is a shell script."

aby Shell skript spustitelný a spustit

nejvíce příkaz způsob, jak spustit nebo spustit shell skript je dělat to spustitelný a pak volat. Soubor shellu je ve výchozím nastavení pouze soubor s nějakým textem. Může být spustitelný shellem pomocí příkazu chmod. V následujícím příkladu uděláme systeminfo.sh soubor skriptu shell spustitelný pro aktuálního uživatele.

chmod u+x systeminfo.sh

můžeme zkontrolovat, zda je soubor skriptu shellu spustitelný pomocí příkazu ls, jako je níže.

ls -l systeminfo.sh

výstup je jako níže, kde má uživatel oprávnění spustit, které je znázorněno písmenem x.

-rwxrw-r-- 1 ismail ismail 44 Oca 28 04:18 systeminfo.sh

Nyní můžeme spustit nebo spustit soubor skriptu přímo voláním s jeho jménem a cestou. Pokud je soubor skriptu v aktuálním pracovním adresáři, lze jej nazvat jako níže.

./systeminfo.sh
udělat Shell skript spustitelný a spustit

alternativně, pokud skript shellu, pokud je jiný adresář, pak aktuální pracovní adresář, můžeme určit úplnou nebo absolutní cestu k jeho provedení. Toto je spolehlivější způsob, jak lze soubor skriptu správně spustit pro každou situaci.

/home/ismail/systeminfo.sh

spusťte Shell skript přímo s Bash příkazem

každý příkaz Bash shell je interpretován a spuštěn prostřednictvím Bash interpretu. Bash interpret je spustitelný soubor, který je umístěn /usr / bin / bash . Můžeme spustit soubor skriptu shellu přímo do binárního Bash. Tato metoda nevyžaduje provedení souboru skriptu. V následujícím příkladu spustíme soubor skriptu shell pomocí Bash binary nebo command.

bash ./systeminfo.sh

alternativně lze zadat úplnou cestu k souboru skriptu shellu jako níže.

bash /home/ismail/systeminfo.sh

spusťte Shell Script jako Root

ve výchozím nastavení je shell skript spuštěn jako aktuální uživatel s aktuálními uživatelskými oprávněními. V některých případech však možná budeme muset spustit soubor skriptu shell jako root nebo s oprávněními root. Příkaz sudo můžeme použít při provádění souboru skriptu shellu.

sudo ./systeminfo.sh

s absolutní cestou souboru skriptu shellu lze příkaz sudo sloučit jako níže.

sudo /home/ismail/systeminfo.sh

spustit Shell skript přes GUI (Desktop Environment)

Shell script soubory lze také spustit přes GUI nebo Desktop prostředí. Nejprve by však mělo být povoleno provedení. Klikněte pravým tlačítkem myši na soubor skriptu a klikněte na vlastnosti jako níže.

vlastnosti souboru skriptu shellu

ve vlastnostech Windows přejděte na kartu Oprávnění a zkontrolujte konfiguraci Execute. To umožňuje spuštění souboru jako programu.

Povolit spuštění souboru jako programu

Debug Shell Script při spuštění

soubor skriptu shell je jako aplikace, která provádí různé příkazy. Skript shellu lze ladit, aby se zjistily chyby nebo chyby. Soubor skriptu shellu lze také ladit, abyste získali podrobné informace o provádění skriptu shellu. Parametr-x se používá s příkazem bash k ladění souboru skriptu shellu.

bash -x ./systeminfo.sh

uložit výstup skriptu shellu do souboru

některé skripty shellu vytvářejí nějaký výstup, který je vytištěn na standardní výstup nebo terminál. Tento výstup může být přesměrován do souboru snadno pomocí operátoru >. V následujícím příkladu přesměrujeme „systeminfo.sh“ výstup skriptu shell do souboru s názvem “ výstup.txt“.

./systeminfo.sh > output.txt

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.