Existe algum comando do Linux para criar um novo arquivo em uma pasta e criar automaticamente esta pasta se não existir? [duplicado]

3

Eu sei que este problema pode ser resolvido usando comandos combinados mkdir e touch. Mas eu quero saber se existe alguma outra solução que use apenas um comando.

    
por glider 07.07.2015 / 10:49

2 respostas

2

Acho melhor usar uma combinação como essa. Eu não estou ciente de que existe um comando de propósito especial para isso.

mkdir -p dict_to_create  # -p forces create of non-existent parent dirs
touch dict_to_create/foo.txt # touch to create the file,
                             # could use -f (force) Read, man touch 
    
por 07.07.2015 / 11:51
0

Existem dois argumentos, nome do diretório e nome do arquivo. Não consegui pensar em nenhum comando desse tipo, mas você pode criar um script curto e colocá-lo no seu /usr/local/bin .

cat > mkfdile  <<'EOF'
#!/bin/bash
mkdir "$1"
cd "$1"
touch "$2"
EOF
chmod a+x mkfdile

Suponho que você precisa disso porque deseja chamar isso de outro script.

    
por 07.07.2015 / 15:35