The UNIX and Linux Forums  
Ciao e benvenuto da parte degli Stati Uniti al UNIX e Linux Forum! Grazie per la visita ed unirsi alla nostra Comunità Globale.

Go Back   UNIX e Linux Forum > Inizio Forum > UNIX for Dummies Domande & Risposte
.
google unix.com



UNIX for Dummies Domande & Risposte Se non sei sicuro dove pubblicare un UNIX o Linux domanda, posta da qui. Tutti i neofiti di Linux e UNIX benvenuto!

Più di UNIX e Linux Forum Argomenti potreste trovare utili
Filo Thread Starter Forum Risposte Ultimo Post
Tcp_conn_req_max_q (case-sensitive?) Olli.Lang SUN Solaris 4 09-11-2008 03:03 AM
maiuscole e minuscole "if [-e $ file]"? luglio Shell scripting e di programmazione 2 05-08-2008 08:48 AM
Ignora maiuscole e minuscole nella causa Switch annelisa Shell scripting e di programmazione 1 07-13-2006 04:36 AM
come disabilitare il RHEL maiuscole e minuscole? blesets UNIX for Dummies Domande & Risposte 2 04-02-2006 09:47 PM
Hostname è distinzione tra maiuscole e minuscole ????? ajphaj UNIX for Dummies Domande & Risposte 3 02-16-2006 01:10 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Cerca in questo Thread Rating: Thread Rating: 1 votes, 4.00 average. Modalità di visualizzazione
  #1 (permalink)  
Old 11-24-2008
msb65 msb65 is offline
Utente Registrato
  
 

Join Date: Aug 2008
Interventi: 89
Controllare se il file è di directory (-d) con distinzione tra maiuscole e minuscole

Salve,

Sto scrivendo uno script bash. All'inizio dello script vi è una variabile definita dall'utente, che è una directory in cui i dati trattati saranno spostati. Quando si esegue lo script vorrei immediatamente assicurarsi che la directory esiste, e se non lo script errore. Il seguente codice che dovrebbe fare:

OUTDIR \u003d '/ Users/msb65/test_data'

if [-d $ OUT_DIR], quindi
echo '- OUT_DIR esiste'
altro
echo; echo; echo 'ERRORE: OUT_DIR non esiste'
exit 1
fi

Tuttavia, questo test non sembra essere tra maiuscole e minuscole. Come posso fare in modo che lo è? Grazie.

Mike
  #2 (permalink)  
Old 11-24-2008
Jim McNamara jim mcnamara is offline Forum Staff  
...@...
  
 

Iscriviti Data: febbraio 2004
Ubicazione: MN
Messaggi: 5.754
Prima di tutto [[-d dirname]] è distinzione tra maiuscole e minuscole. O vi è un altro directory che le partite o il vostro script sta facendo qualcosa che non volete che faccia in questo caso.

È che il codice sopra identico a quello che è mancato per voi?
  #3 (permalink)  
Old 11-24-2008
msb65 msb65 is offline
Utente Registrato
  
 

Join Date: Aug 2008
Interventi: 89
Ciao Jim,

Grazie per la risposta. Ho notato che si sta utilizzando la doppia parentesi, mentre sto utilizzando unico. Come dovrebbe cambiare il comportamento che?

Mike
  #4 (permalink)  
Old 11-24-2008
Ikon's Avatar
Ikon Ikon is offline Forum Advisor  
Utente Registrato
  
 

Iscriviti Data: luglio 2008
Località: Phoenix, Arizona
Interventi: 669
È il codice funziona per me, ed è sensibile alle maiuscole / minuscole:
Codice:
# cat check
if [ -d $1 ]; then
echo '- OUT_DIR exists'
else
echo; echo; echo 'ERROR: OUT_DIR does not exist'
exit 1
fi

# ll
total 8
-rw-r--r-- 1 root root 107 Nov 24 12:56 check

# sh check Test


ERROR: OUT_DIR does not exist

# mkdir Test

# ll
total 16
-rw-r--r-- 1 root root  107 Nov 24 12:56 check
drwxr-xr-x 2 root root 4096 Nov 24 12:57 Test

# sh check Test

- OUT_DIR exists
# sh check test


ERROR: OUT_DIR does not exist
 #
  #5 (permalink)  
Old 11-24-2008
msb65 msb65 is offline
Utente Registrato
  
 

Join Date: Aug 2008
Interventi: 89
Hi Ikon,

Questo è interessante il fatto che simili codice sembra funzionare diversamente su i nostri due sistemi. Sto usando un Mac esecuzione Leopard. Mi chiedo se ci sono sfumature tra le nostre bash? Il mio sistema è la directory: / Users/msb65/test_data/Olive

Tuttavia, la prova di errore quando ho doesnt sostituire un minuscolo "o" a "Olive":

$ Dir \u003d '/ Users/msb65/test_data/Olive'
$ If [-d $ dir]; then echo ciao; fi
ciao

dir \u003d '/ Users/msb65/test_data/olive'
$ If [-d $ dir]; then echo ciao; fi
ciao

Perché è questo?

Mike
  #6 (permalink)  
Old 11-24-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderatore
  
 

Iscriviti Data: febbraio 2007
Messaggi: 4.305
I vecchi file system di OS X non sono maiuscole e minuscole. Google leopardo tra maiuscole e minuscole del file system.
Closed Thread

Segnalibri

Thread Tools Cerca in questo Thread
Cerca in questo Thread:

Ricerca Avanzata
Modalità di visualizzazione Vota questo thread
Vota questo thread:

Distacco regolamento
Tu non può post nuovo thread
Tu non può inviare una risposta
Tu non può postare allegati
Tu non può modificare i tuoi post

BB codice è Su
Smilies sono Su
[IMG] codice Su
Codice HTML è Chiuso
Trackbacks sono Su
Pingbacks sono Su
Refbacks sono Su




Tutti gli orari sono GMT -4. La data di oggi è 02:34 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traduzioni Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX e Linux Forum Content Copyright © 1993-2009. Tutti i diritti Reserved.Ad di gestione da RedTyger

Contenuti pertinenti URL da vBSEO 3.2.0