Criar diretório com Variável + comando date [RESOLVIDO]

1. Criar diretório com Variável + comando date [RESOLVIDO]

Luiz Lopes
lopesluizh

(usa Ubuntu)

Enviado em 21/06/2013 - 08:10h

Bom dia pessoal.
Estou fazendo um trabalho pra faculdade, um trabalho simples, mas como não tive muita intimidade com o Linux, estou tendo alguns problemas.

Segue abaixo um fragmento do meu script:

cat maquinas | while read ip
do
mkdir /home/luiz/backup/$ip_`date +%Y%d%m-%H%M`
.
.
.
done

Nesse caso o arquivo "maquinas" tem uma série de ip's dos quais eu tenho que fazer um backup, criar um diretório com o ip e a data (ex. 192.168.1.40_20132106-0801 ). Só que esse comando acima está criando o diretório apenas com a data, ou seja, ele não busca a variável no arquivo - pelo menos para criar o diretório, pois funciona direitinho com o ssh / sshpass.
No arquivo "maquinas" os ip's relacionados estão separados por espaço.

Então pessoal, o que eu estou fazendo de errado?

Aguardo ansiosamente pelas respostas.


  


2. Re: Criar diretório com Variável + comando date [RESOLVIDO]

Alexandre Gonçalves Monteiro da Silva
alexandregms

(usa Ubuntu)

Enviado em 21/06/2013 - 11:07h

Simples, coloque uma barra invertida antes do "_"



cat maquinas | while read ip
do

mkdir /home/luiz/backup/$ip\_`date +%Y%d%m-%H%M`
.
.
.

done




3. Re: Criar diretório com Variável + comando date [RESOLVIDO]

Luiz Lopes
lopesluizh

(usa Ubuntu)

Enviado em 22/06/2013 - 16:09h

alexandregms escreveu:

Simples, coloque uma barra invertida antes do "_"



cat maquinas | while read ip
do

mkdir /home/luiz/backup/$ip\_`date +%Y%d%m-%H%M`
.
.
.

done





Obrigado alexandregms!! vou testar essa noite e volto aqui para tirar mais dúvidas!!


4. Re: Criar diretório com Variável + comando date [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 22/06/2013 - 21:39h

E aí lopesluizh blz?

Isso que o Alexandre falou resolve seu problema.

Tocando em outro ponto do script, acredito ser mais adequado utilizar um "for", pois, o fator determinante saída do laço não é uma condição. "O while" é usado quando existe uma condição.


for ip in `cat maquinas`
do
mkdir /home/luiz/backup/$ip\_`date +%Y%d%m-%H%M`
.
.
.
done


Embora funcione... :)

Abraços.


5. Re: Criar diretório com Variável + comando date [RESOLVIDO]

Luiz Lopes
lopesluizh

(usa Ubuntu)

Enviado em 23/06/2013 - 01:48h

Boa noite galera..

Obrigado pela ajuda.

A ajuda do alexandregms, resolveu sim o que eu queria fazer, porém, além de criar a pasta com o ip + date, ele cria uma segunda pasta nomeada apenas com o date.

o comando é esse: mkdir /home/luiz/backup/$ip\_`date +%Y%d%m-%H%M`

e ele gera exatamente isso:

192.168.1.125_20130623-2245

e

_20130623-2245

como resolvo?


6. Re: Criar diretório com Variável + comando date [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 23/06/2013 - 02:04h

Cara, posta seu código aqui. Tem alguma coisa errada. Veja:


root@suado:~/temp# pwd
/root/temp
root@suado:~/temp# ls
root@suado:~/temp# ip=10.0.0.1
root@suado:~/temp# mkdir $ip\_`date +%Y%d%m-%H%M`
root@suado:~/temp# ls
10.0.0.1_20132306-0203
root@suado:~/temp#


Flws.


7. Re: Criar diretório com Variável + comando date [RESOLVIDO]

Luiz Lopes
lopesluizh

(usa Ubuntu)

Enviado em 23/06/2013 - 02:59h

#!/bin/bash

cat maquinas | while read ip
do
mkdir /home/luiz/backup/$ip\_`date +%Y%d%m-%H%M`
done

onde maquinas é o nome do arquivo.

fazendo direto na linha de comando, o comando funciona sem problemas, o lance é que dentro de um script, cria as duas pastas, mesmo que essa linha apenas.


8. Re: Criar diretório com Variável + comando date [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 23/06/2013 - 11:41h

lopesluizh escreveu:

#!/bin/bash

cat maquinas | while read ip
do
mkdir /home/luiz/backup/$ip\_`date +%Y%d%m-%H%M`
done

onde maquinas é o nome do arquivo.

fazendo direto na linha de comando, o comando funciona sem problemas, o lance é que dentro de um script, cria as duas pastas, mesmo que essa linha apenas.


O problema tá nisso:

cat maquinas | while read ip


Use o for, como sugeri no meu primeiro post. Cá pra nós, jogar a saída do cat no while é um armengue muito louco, nunca tinha visto, hehehe :)



9. Re: Criar diretório com Variável + comando date [RESOLVIDO]

Luiz Lopes
lopesluizh

(usa Ubuntu)

Enviado em 23/06/2013 - 18:04h

Obrigado pmartelotta como for deu certinho!!

Eu ainda não tinha tentado essa solução. Valeu toda a comunidade pela força. Voltarei mais vezes e espero daqui a algum tempo colaborar com os outro usuários.

Att
Luiz


10. Re: Criar diretório com Variável + comando date [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 23/06/2013 - 20:59h

Disponha ;)






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts