Pular para o conteúdo

Criar diretório se não existir [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. Criar diretório se não existir [RESOLVIDO]

Enviado em 22/05/2012 - 13:38h

E aí pessoal, td bem? Estou trabalhando com linux a pouco tempo e uma coisa bem chata que eu me deparo diariamente é ter que dar um comando para criar uma pasta e só depois dar o comando para criar o arquivo com o gedit.

ex: $ mkdir /var/www/teste
$ gedit /var/www/teste/index.php

Teria alguma forma de criar o arquivo e se caso a pasta n existir, criá-la tbm? Eu sei que posso digitar os dois comandos na mesma linha, mas queria simplificar mais ainda!

Responder tópico

2. Re: Criar diretório se não existir [RESOLVIDO]

Melhor resposta

Enviado em 22/05/2012 - 13:55h

Exemplo:


#!/bin/bash

echo " Digite o nome do arquivo a ser criado
read file
echo "Digite aonde o arquivo será criado, caminho completo"
read dir

if [ -d "$dir" ];then
# se o diretório existir
touch "$dir"/"$file"
else
# se não existir, vai ser criado o diretório
mkdir "$dir"; touch "$dir"/"$file"
fi
basicamente o script vai pedir o nome do arquivo e diretório aonde será gravado o arquivo e irá verificar se o diretório existe ou não se existir cria o arquivo e se não existir cria o diretório e depois o arquivo dentro do diretório criado.

3. Ola

Enviado em 22/05/2012 - 13:41h

como vc está fazendo no momento? com && ?

4. Re: Criar diretório se não existir [RESOLVIDO]

Enviado em 22/05/2012 - 13:42h

exatamente

5. Re: Criar diretório se não existir [RESOLVIDO]

Enviado em 22/05/2012 - 13:46h

se cria diretórios constantemente e nesses diretórios cria documentos, então cria um sccript.

6. Re: Criar diretório se não existir [RESOLVIDO]

Enviado em 22/05/2012 - 13:48h

eabreu escreveu:

se cria diretórios constantemente e nesses diretórios cria documentos, então cria um sccript.
Como q eu faria isso?


7. Re: Criar diretório se não existir [RESOLVIDO]

Enviado em 22/05/2012 - 13:58h

eabreu escreveu:

Exemplo:


#!/bin/bash

echo " Digite o nome do arquivo a ser criado
read file
echo "Digite aonde o arquivo será criado, caminho completo"
read dir

if [ -d "$dir" ];then
# se o diretório existir
touch "$dir"/"$file"
else
# se não existir, vai ser criado o diretório
mkdir "$dir"; touch "$dir"/"$file"
fi


basicamente o script vai pedir o nome do arquivo e diretório aonde será gravado o arquivo e irá verificar se o diretório existe ou não se existir cria o arquivo e se não existir cria o diretório e depois o arquivo dentro do diretório criado.
Se eu quiser abrir o arquivo com o gedit, eu poderia colocar: "gedit $dir"/"$file"?

8. Re: Criar diretório se não existir [RESOLVIDO]

Enviado em 22/05/2012 - 14:00h

Pode sim, mas ai, no meu ver poderia incluir uma opção no script, tipo deseja abrir o arquivo criado ?

entendeu ?

9. Re: Criar diretório se não existir [RESOLVIDO]

Enviado em 22/05/2012 - 14:00h

Coloque esse conteúdo abaixo, dentro de um arquivo e de permissão de execuçao:


#!/bin/bash

if [ $# -lt 2 ] ; then
echo echo -e "\nExemplo de uso: $0 /home/fabio/DIR-NOVO arq_novo"
exit 1;
else
mkdir -p $1 && touch $1/$2 || echo -e "\nUse $0 /caminho/completo/de/diretorio nomedoarquivo"
fi

10. Re: Criar diretório se não existir [RESOLVIDO]

Enviado em 22/05/2012 - 14:22h

Valeu galera, problema resolvido :)

11. Re: Criar diretório se não existir [RESOLVIDO]

Enviado em 22/05/2012 - 14:56h

Marca a melhor resposta para que sirva de referência para outras pessoas.

abraço.

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder