lanciare script perl da script bash
-
- Prode Principiante
- Messaggi: 5
- Iscrizione: mercoledì 15 marzo 2017, 14:59
- Desktop: ubuntu
- Distribuzione: Ubuntu 14.04.1 LTS
- Sesso: Maschile
lanciare script perl da script bash
Salve ragazzi, sono nuovo del gruppo e approfitto per salutare ttutti i partecipanti.
Avrei un problemino da risolvere e nello specifico ho un script perl chiamato cds_extractor il quale processa un file di testo di tipo .gbk estraendone alcuni campi che vengono scritti in un nuovo file con estensione .faa
il lancio dello script avviene nel seguente modo
perl cds_extractor.pl -i nome_file.gbk -p
dove -p è una opzione che è necessario fornire per far si che lo script estragga solo alcuni tipi di campi del .gbk. Fornire tale opzione è obbligatorio.
Volendo far lanciare lo script perl da uno script bash ho creato il file extractor.sh:
#!/bin/bash
perl cds_extractor.pl -i nome_file.gbk -p
lanciando lo script bash lo script perl viene correttamente eseguito ma l'opzione -p non viene letta come opzione e lo script si interrompe dando errore e chiedendomi di specificarla.
Come posso risolvere??
Avrei un problemino da risolvere e nello specifico ho un script perl chiamato cds_extractor il quale processa un file di testo di tipo .gbk estraendone alcuni campi che vengono scritti in un nuovo file con estensione .faa
il lancio dello script avviene nel seguente modo
perl cds_extractor.pl -i nome_file.gbk -p
dove -p è una opzione che è necessario fornire per far si che lo script estragga solo alcuni tipi di campi del .gbk. Fornire tale opzione è obbligatorio.
Volendo far lanciare lo script perl da uno script bash ho creato il file extractor.sh:
#!/bin/bash
perl cds_extractor.pl -i nome_file.gbk -p
lanciando lo script bash lo script perl viene correttamente eseguito ma l'opzione -p non viene letta come opzione e lo script si interrompe dando errore e chiedendomi di specificarla.
Come posso risolvere??
- thece
- Tenace Tecnocrate
- Messaggi: 12949
- Iscrizione: lunedì 23 aprile 2007, 14:16
- Distribuzione: Debian 12 (Bookworm) - KDE
Re: lanciare script perl da script bash
forse ho capito male ma, da shell a seguito del comando
Codice: Seleziona tutto
perl cds_extractor.pl -i nome_file.gbk -p
Codice: Seleziona tutto
#!/bin/bash
perl cds_extractor.pl -i nome_file.gbk -p $1
exit 0
Codice: Seleziona tutto
./mioScript.sh ARGOMENTO
-
- Prode Principiante
- Messaggi: 5
- Iscrizione: mercoledì 15 marzo 2017, 14:59
- Desktop: ubuntu
- Distribuzione: Ubuntu 14.04.1 LTS
- Sesso: Maschile
Re: lanciare script perl da script bash
No lo script è completo non devo fornire nessun argomento. Quello che succede è che lanciando lo script perl da bash l'opzione -p non viene riconosciuta e lo script mi restituisce un errore come se non fosse stata specificata
- thece
- Tenace Tecnocrate
- Messaggi: 12949
- Iscrizione: lunedì 23 aprile 2007, 14:16
- Distribuzione: Debian 12 (Bookworm) - KDE
Re: lanciare script perl da script bash
Hai provato ad usare le " per il comando ... a cambiare l'ordine dei parametri ... ?
-
- Prode Principiante
- Messaggi: 5
- Iscrizione: mercoledì 15 marzo 2017, 14:59
- Desktop: ubuntu
- Distribuzione: Ubuntu 14.04.1 LTS
- Sesso: Maschile
Re: lanciare script perl da script bash
Risolto cambiando l'ordine dei comandi mettendo -p prima di -i.
Mi piacerebbe comunque capire perché succede questo!!
Grazie a tutti
Mi piacerebbe comunque capire perché succede questo!!
Grazie a tutti
- crap0101
- Rampante Reduce
- Messaggi: 8242
- Iscrizione: martedì 30 ottobre 2007, 6:33
- Desktop: LXDE
- Distribuzione: Ubuntu 18.04.1 LTS
- Sesso: Maschile
- Località: TO
- Contatti:
Re: lanciare script perl da script bash
perchè lo interpreta come opzione del comando `perl` e non di quello che stai eseguendo tramite appunto l'interprete perl.
Per evitare questi problemi generalmente si usa `--` che indica all'interprete di turno (perl, python, bash, ecc) che gli argomenti successivi non sono più sue opzioni, per cui
Per evitare questi problemi generalmente si usa `--` che indica all'interprete di turno (perl, python, bash, ecc) che gli argomenti successivi non sono più sue opzioni, per cui
Codice: Seleziona tutto
perl -opzione_perl valore -- programma -opzione_programma valore
http://www.gnu.org/ http://boinc.berkeley.edu/ http://www.python-it.org/
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
- Ricorda le ultime parole di suo padre: «Sta' alla larga dalle chiese, figlio. La sola cosa per cui hanno la chiave è il merdaio. E giurami che non porterai mai un distintivo della legge» - W.S. Burroughs
- thece
- Tenace Tecnocrate
- Messaggi: 12949
- Iscrizione: lunedì 23 aprile 2007, 14:16
- Distribuzione: Debian 12 (Bookworm) - KDE
Re: lanciare script perl da script bash
Interessante
Chi c’è in linea
Visualizzano questa sezione: 0 utenti iscritti e 9 ospiti