teste lógico pasta [RESOLVIDO]

1. teste lógico pasta [RESOLVIDO]

Lucas Noetzold
noitso

(usa Debian)

Enviado em 16/07/2015 - 22:13h

duas questões

1 - Como funciona o teste lógico dos colchetes?
tentei o seguinte em um script
[  ~/pastinhamarota  ] || mkdir ~/pastinhamarota 

depois de horas tentado descobrir o que estava errado em uma tripa de script, descobri que esta linha retorna true sempre, estando a pasta lá ou não, então me veio a dúvida de porque este teste não funciona e qual a correta utilização/propósito dos colchetes?



2 - de quais formas (simples) posso testar a existência de um diretório?
conheço apenas test -d

Abraço aos amigos do VOL


  


2. MELHOR RESPOSTA

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 16/07/2015 - 22:19h

Olá

faltou o parâmetro " -d " para o teste.
[ -d /caminho/absoluto/da/pasta ] 


Os colchetes substitue o comando test. Por exemplo:

Ao invés de fazer assim:
if test -d /caminho/absoluto/da/pasta 
then...

vc pode fazer assim:
if [ -d /caminho/absoluto/da/pasta ]
then...


roda um:
man test |grep - 


abs
---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---

3. Re: teste lógico pasta [RESOLVIDO]

Lucas Noetzold
noitso

(usa Debian)

Enviado em 16/07/2015 - 22:25h

tem que ser /root/pastinha, então ~/pastinha não pode ser usado?


4. Re: teste lógico pasta [RESOLVIDO]

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 16/07/2015 - 22:27h

noitso escreveu:

tem que ser /root/pastinha, então ~/pastinha não pode ser usado?


Pode sim!
Só deve tomar cuidado ao usar caminhos relativos, pois nem sempre o ambiente será igual.
No caso da home ok.


---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---


5. Re: teste lógico pasta [RESOLVIDO]

Lucas Noetzold
noitso

(usa Debian)

Enviado em 17/07/2015 - 08:23h


Sim este script vou rodar apenas como root, serve pra provisionar umas maquinas automaticamente. Valeu pela explicação!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts