Potresti passare il nome del file come argomento dello script:
Per leggerlo dandolo come input devi usare un "read" che legga il valore di una variabile tipo NOME_FILE
Codice: Seleziona tutto
echo "inserisci nome del file"
read NOME_FILE
cd /path/dove/sta/ilfile
gpg bla bla bla $NOME_FILE
rm -i $NOME_FILE
Non capisco però bene il tuo script perchè non so come funziona gpg.
Domande:
- perchè rimuovi pippo.txt alla fine? Non è lui il file criptato? Quindi da tenere?
- con lo script sopra puoi criptare solo files che stanno in Documents... Perchè limitarsi?
Sempre gpg permettendo, ripeto non so come funziona quel comando, se crea un altro file criptato o cosa faccia.. Ma al netto di questo discorso, sarebbe più utile passare il nome e il percorso del file da criptare come primo argomento da passare allo script da liea di comando:
Codice: Seleziona tutto
#!/bin/bash
FILE=$1
DIR=$(dirname $FILE)
cd $DIR
gpg -ca --cipher-algo twofish $FILE
rm -i $FILE
Poi ad esempio non so se sia davvero necessari entrare nella directory in cui si trova il file, intendo se lo richieda gpg. Se non lo fosse basterebbe qualcosa di più semplice:
Codice: Seleziona tutto
#!/bin/bash
FILE=$1
gpg -ca --cipher-algo twofish $FILE
rm -i $FILE
Come usare lo script da riga di comando (chiamiamolo "cripta.sh"):
PS.
per eseguire lo script devi dargli i permessi d'esecuzione: