GNU/Linux >> Znalost Linux >  >> Linux

Spusťte textový soubor jako příkazy v Bash

Provést

. example.txt

To dělá přesně to, co požadujete, bez nastavení příznaku spustitelného souboru nebo spuštění další instance bash.

Podrobné vysvětlení viz např. https://unix.stackexchange.com/questions/43882/what-is-the-difference-between-sourcing-or-source-and-executing-a-file-i


Můžete použít něco takového:

for i in `cat foo.txt`
do
    sudo $i
done

Pokud mají příkazy argumenty (tj. v řádcích jsou mezery), možná se s tím budete muset trochu opičit, abyste ochránili mezery, aby celý řetězec viděl sudo jako příkaz. Ale dává vám představu, jak začít.


pomocí těchto příkazů můžete vytvořit skript shellu a poté chmod +x <scriptname.sh> a poté jej spusťte pomocí

./scriptname.sh

Je velmi jednoduché napsat bash skript

Mockup sh soubor:

#!/bin/sh
sudo command1
sudo command2 
.
.
.
sudo commandn

můžete jej také spustit pomocí shellu, například:

bash example.txt

sh example.txt

Linux
  1. Jak spustit příkazy bash Linuxu ve skriptu PERL?

  2. Spuštění souboru skriptu přes Ssh přes Sudo?

  3. Spusťte příkaz bash na jenkins pipeline

  1. Spusťte část bash skriptu jako jiný uživatel

  2. echo text s novým řádkem v bash

  3. Spouštějí se příkazy v bash skriptu paralelně nebo jeden po druhém?

  1. Bash Script:Zkontrolujte, zda je soubor textovým souborem?

  2. Zabijte proces pomocí souboru pid

  3. bash skript připojí text k prvnímu řádku souboru