Problema com shell script [RESOLVIDO]

1. Problema com shell script [RESOLVIDO]

Célio Junior
celiomagalhaesjr

(usa Ubuntu)

Enviado em 16/01/2017 - 19:19h

O Shell Script abaixo sempre responde como falso e sai, mesmo eu tendo o arquivo payload.txt na pasta do squid3 , sou novo nisso, poderiam me ajudar por favor?

#!/bin/bash
clear
payload="/etc/squid3/payload.txt"
tput setaf 7 ; tput setab 4 ; tput bold ; printf ' %50s%s%-20s\n' " ADICIONAR HOST AO SQUID3: " ; tput sgr0
echo
if [ ! -f "payload" ]
then
tput setaf 7 ; tput setab 1 ; tput bold ; echo "Arquivo não encontrado..." ; tput sgr0
exit 1
else
echo
tput setaf 7 ; tput setab 1 ; tput bold ; echo "HOSTS DENTRO DO ARQUIVO:" ; tput sgr0
echo
cat $payload
echo
exit 1
fi
fi



  


2. MELHOR RESPOSTA

Perfil removido
removido

(usa Nenhuma)

Enviado em 16/01/2017 - 20:08h

Eu me dei a liberdade de tentar consertar a identação e mudar #!/bin/bash pra #!/usr/bin/env bash (voce não usa argumentos no bash e usar env bash permite que a binaria do bash possa estar em outros lugares como /usr/local/bin/bash, como nos BSDs)

eu assumo que era só mudar de payload para $payload pra ele testar a variavel que leva ao arquivo em vez de apenas o arquivo


--- /home/leon/scriptdemerda2 2017-01-16 20:06:15.890249764 -0200
+++ /home/leon/scriptdemerda 2017-01-16 20:06:38.162125467 -0200
@@ -1,18 +1,22 @@
-#!/bin/bash
+#!/usr/bin/env bash
+
clear
+
payload="/etc/squid3/payload.txt"
+
tput setaf 7 ; tput setab 4 ; tput bold ; printf ' %50s%s%-20s\n' " ADICIONAR HOST AO SQUID3: " ; tput sgr0
+
echo
-if [ ! -f "payload" ]
-then
- tput setaf 7 ; tput setab 1 ; tput bold ; echo "Arquivo não encontrado..." ; tput sgr0
- exit 1
-else
- echo
- tput setaf 7 ; tput setab 1 ; tput bold ; echo "HOSTS DENTRO DO ARQUIVO:" ; tput sgr0
- echo
- cat $payload
- echo
- exit 1
- fi
- fi
+
+if [ ! -f "$payload" ]
+ then
+ tput setaf 7 ; tput setab 1 ; tput bold ; echo "Arquivo não encontrado..." ; tput sgr0
+ exit 1
+ else
+ echo
+ tput setaf 7 ; tput setab 1 ; tput bold ; echo "HOSTS DENTRO DO ARQUIVO:" ; tput sgr0
+ echo
+ cat $payload
+ echo
+ exit 1
+fi


Aqui tem um patch só salvar como patch e dar patch -p1 < /caminho/pro/patch ou copiar

3. Re: Problema com shell script [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 16/01/2017 - 19:45h

O teste deve ser feito sobre o CONTEÚDO da variável e não sobre a palavra payload.


------------------------------------------------------------------------------------------------------------------
Cedo ou tarde, você vai aprender, assim como eu aprendi, que existe uma diferença entre CONHECER o caminho e TRILHAR o caminho. (Neo em Matrix)
---------------------------------------------------------------------------------------------------------------



4. Re: Problema com shell script [RESOLVIDO]

Célio Junior
celiomagalhaesjr

(usa Ubuntu)

Enviado em 16/01/2017 - 19:54h

KYETOY escreveu:

O teste deve ser feito sobre o CONTEÚDO da variável e não sobre a palavra payload.


------------------------------------------------------------------------------------------------------------------
Cedo ou tarde, você vai aprender, assim como eu aprendi, que existe uma diferença entre CONHECER o caminho e TRILHAR o caminho. (Neo em Matrix)
---------------------------------------------------------------------------------------------------------------


Como eu faria isso no caso?



5. Re: Problema com shell script [RESOLVIDO]

Célio Junior
celiomagalhaesjr

(usa Ubuntu)

Enviado em 16/01/2017 - 20:36h

]Aqui tem um patch só salvar como patch e dar patch -p1 < /caminho/pro/patch ou copiar

Perfeito, muito obrigado pela dica e pela correção, é dificil no começo , tudo parece uma montanha rsrs 










Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts