Usando o caminho de entrada do usuário em um script bash

2

Eu sou novo no bash e estou tentando escrever um script simples.

O usuário executa meu script e na mesma linha especifica o destino. Neste destino, que eu não sei de antemão, gostaria de verificar se existe um arquivo específico oculto e fazer algo, e se não criar o arquivo. A entrada é assim:

./scriptName.sh /userPath

Tenho certeza de que estou ignorando algum comando simples e agradeço qualquer ajuda. Obrigado

    
por Life of pi 09.11.2016 / 21:04

1 resposta

2

No seu exemplo, decida se o caminho para acessar o arquivo fornecido será

relative (algum / child / dir / some_file)

ou absoluto (/ a / full / path / to / some_file)

... AVISO o parente não tem líder / enquanto o absoluto faz

Em seguida, para determinar se esse arquivo existe, basta fazer

#!/bin/bash

set -o errexit  # stop execution on error

given_file= # retrieve input parameter and populate a variable

if [ -f given_file  ]; then
     echo do something here file does exist
else
    echo no file 
fi

Depois de ter criado seu arquivo scriptName.sh, você precisa ativar seu bit de execução emitindo

chmod +x scriptName.sh 

faça uma listagem de arquivos para mostrar as permissões antes e depois da emissão acima, então você está pronto para executá-las

scriptName.sh  /a/full/path/to/some_file 
    
por Scott Stensland 09.11.2016 / 21:10