|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Mar 2005
Messaggi: 1653
|
Bash script: testare l'esistenza di un comando
Ciao bacarospi!
La mia mente malata ha appena partorito il primo script leggermente più complicato di un Codice:
#!/bin/bash echo "Ciao mondo" Codice:
#!/bin/bash
# makehtml.sh
# Author: Gica78R
# This script takes all .c and .h source files in the
# current directory and generates the corresponding
# html files using the webcpp program. Output files
# will be stored in the html subdirectory. An eventually
# existing html subdirectory will be deleted.
DEST=html # destination directory
if [[ $# -gt 0 ]]
then
echo "Non sono consentiti parametri"
exit
fi
if [[ -e "${DEST}" ]]
then if [[ -d "${DEST}" ]]
then
echo "Rimuovo la vecchia directory \"${DEST}\""
rm -Rf "${DEST}"
else
echo "\"${DEST}\" non è una directory. Rimuoverla manualmente e rieseguire lo script!"
exit
fi
else
echo "La directory \"${DEST}\" non esiste, la creo"
fi
mkdir html
for arg in `ls *.c *.h`
do
webcpp "${arg}" "${DEST}/${arg}.html" -l -m
done
exit
Prima che faccia ciò, però, vorrei inserire il codice per controllare l'esistenza nel sistema, e in particolare nel PATH dell'utente che lancia lo script, del programma webcpp. Esiste un modo rapido per farlo? Se uso la condizione -e in un if credo controlli solo nella directory corrente; usando invece il pathname assoluto la cosa è poco pratica, perché su alcuni sistemi magari il programma è installato in una directory non standard... Suggerimenti? Grazie!
__________________
gica78r@ncc-1701:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
|
Usa which; ad es.
which webcpp >/dev/null || exit
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12 |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Mar 2005
Messaggi: 1653
|
Grazie mille!
__________________
gica78r@ncc-1701:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Mar 2005
Messaggi: 1653
|
Quale versione è migliore?
Codice:
if [[ ! `which webcpp 2>/dev/null` ]] then echo "webcpp non trovato. Esco!" exit fi Codice:
which webcpp>/dev/null || { echo "webcpp non trovato. Esco!"; exit; }
__________________
gica78r@ncc-1701:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:47.




















