o Shell Bash e Bash é o principal componente de gerenciamento para os sistemas Linux. Os comandos são executados no bash para concluir tarefas ou Trabalhos. Esses comandos podem ser armazenados em um arquivo chamado Script de shell. O script shell é usado para executar um ou mais comandos apenas chamando o arquivo de script shell sem escrever comandos repetidamente. Os scripts shell têm a extensão*. sh para o Bash ou Sh. Neste tutorial, aprenderemos como executar arquivos de script shell de maneiras diferentes.
criar Script de Shell ou arquivo de Script
Antes de começar a executar um arquivo de script de shell, criamos um arquivo de script. Basta criar um arquivo de texto com a extensão *.sh. Em seguida, coloque alguns comandos de shell nele. Neste exemplo, criamos o script shell chamado systeminfo.sh .
hostnamectlecho "This is a shell script."
Faça Shell Script executável e execute
a maneira mais comando para executar ou executar um script shell está tornando-o executável e, em seguida, chamar. O arquivo shell é apenas um arquivo com algum texto por padrão. Ele pode ser executável pelo shell usando o comando chmod. No exemplo a seguir, fazemos o systeminfo.sh arquivo de script shell executável para o usuário atual.
chmod u+x systeminfo.sh
podemos verificar se o arquivo de script shell é executável com o comando ls como abaixo.
ls -l systeminfo.sh
a saída é como abaixo, onde o usuário tem a permissão de execução que é representada com a letra X.
-rwxrw-r-- 1 ismail ismail 44 Oca 28 04:18 systeminfo.sh
agora podemos executar ou executar o arquivo de script diretamente chamando com seu nome e caminho. Se o arquivo de script estiver no diretório de trabalho atual, ele poderá ser chamado como abaixo.
./systeminfo.sh
Alternativamente, se o script de shell se é outro diretório, o diretório de trabalho atual podemos especificar o completo ou o caminho absoluto para executá-lo. Esta é a maneira mais confiável onde o arquivo de script pode ser executado corretamente para cada situação.
/home/ismail/systeminfo.sh
execute o script Shell diretamente com o comando bash
cada comando bash shell é interpretado e executado por meio do interpretador bash. O interpretador bash é um arquivo executável localizado /usr/bin/bash . Podemos executar um arquivo de script shell fornecendo-o diretamente no binário bash. Este método não requer tornar o arquivo de script executável. No exemplo a seguir, executamos o arquivo de script shell via Bash binary ou command.
bash ./systeminfo.sh
Alternativamente, o caminho completo do arquivo de script shell pode ser especificado como abaixo.
bash /home/ismail/systeminfo.sh
execute o script Shell como Root
por padrão, o script shell é executado como o usuário atual com os privilégios de usuário atuais. Mas, em alguns casos, podemos precisar executar o arquivo de script de shell como root ou com privilégios de root. Podemos usar o comando sudo durante a execução do arquivo de script shell.
sudo ./systeminfo.sh
com o caminho absoluto do arquivo de script shell, o comando sudo pode ser mesclado como abaixo.
sudo /home/ismail/systeminfo.sh
Executar script Shell via GUI (ambiente de trabalho)
Arquivos de script Shell também podem ser executados através da GUI ou ambiente de trabalho. Mas primeiro deve ser ativado para a execução. Clique com o botão direito no arquivo de script e clique em Propriedades como abaixo.
nas propriedades windows navegue até a guia Permissões e verifique a configuração executar. Isso permite a execução de arquivo como programa.
Debug Shell Script ao executar
o arquivo shell script é como um aplicativo que executou comandos diferentes. O script shell pode ser depurado para detectar bugs ou erros. Além disso, o arquivo shell script pode ser depurado para obter informações detalhadas sobre a execução do shell script. O parâmetro-x é usado com o comando bash para depurar o arquivo de script do shell.
bash -x ./systeminfo.sh
Salve a saída do script de Shell em um arquivo
alguns scripts de shell criam alguma saída impressa na saída ou terminal padrão. Esta saída pode ser redirecionada para um arquivo facilmente usando o operador >. No exemplo a seguir, redirecionamos o “systeminfo.sh” shell script output no arquivo chamado ” output.txt”.
./systeminfo.sh > output.txt