PDA

Visualizza la versione completa : Problemi con c-shell - programmazione


wittgen105
27-10-2004, 23:51
Sono alla prime armi con la programmazione in c-shell. :D
Ho fatto un programmino che verifica l'esistenza di un file e poi mi dice chi il proprietario. Il problema che non funziona come dovrebbe. :(

Ecco il programma:


if (-e /home/wit/prova) then
echo 'il file esiste'
endif

set nm = 'ls -la /home/wit/prova | cut -b 17-21'

echo "Il proprietario del file " $nm

Il problema da come output:

il file esiste
Il proprietario del file ls -la /home/wit/prova | cut -b 17-21


Anzicch:

il file esiste
Il proprietario del file wit



Cos' che sbaglio??? :master:

Sergio Pedone
28-10-2004, 00:03
Originariamente inviato da wittgen105
set nm = 'ls -la /home/wit/prova | cut -b 17-21'

set nm = `ls -la /home/wit/prova | cut -b 17-21`

Non l'ho testato, ma il problema secondo me sta nel non
corretto uso degli apici. Sostituisci gli apici diritti
con gli apici inversi, in modo tale da assegnare alla
variabile nm il risultato del comando contenuto tra gli
apici inversi.

Spero di essere stato chiaro.

ciao.

wittgen105
28-10-2004, 00:07
Originariamente inviato da Sergio Pedone
Sostituisci gli apici diritti
con gli apici inversi
Che cambia???

Ilmalcom
28-10-2004, 00:13
' ' = strong quoting
" " = weak quoting
` ` = command execution

Baci...

Sergio Pedone
28-10-2004, 00:14
Originariamente inviato da wittgen105
Che cambia???
Provo a farti un esempio pratico del diverso comportamento
della shell in base al tipo di apici utilizzato:


sergio@server sergio]$ prova="ls -l"
[sergio@server sergio]$ echo "$prova"
ls -l
[sergio@server sergio]$ echo '$prova'
$prova
[sergio@server sergio]$ echo `$prova`
totale 12844 -rw-rw-r-- 1 sergio sergio 649155 ott 23 17:50
folding-20041023.ps drwxr-xr-x 4 sergio sergio 4096 ott 26 17:39
foldingAThomeSempron -rw-rw-r-- 1 sergio sergio 12458066 ott
25 17:55 folding.tar.gz drwxrwxr-x 2 sergio sergio 4096 ott 17
23:11 internet -rw------- 1 sergio sergio 2056 ott 17 15:16
mbox -rw-rw-r-- 1 sergio sergio 39 ott 24 15:44 sleep
drwxrwxr-x 2 sergio sergio 4096 ott 17 01:14 tmp
[sergio@server sergio]$

osiryx
28-10-2004, 00:21
if [ -e ~/.zshrc ]
then
nm=`ls -la ~/.zshrc | cut -b 14-19`
echo "Il file esiste ed il proprietario " $nm
else
echo "Il file nn esiste"
fi

Gli apici in programmazione sono molto importanti

wittgen105
28-10-2004, 12:19
Originariamente inviato da Sergio Pedone
Provo a farti un esempio pratico del diverso comportamento
della shell in base al tipo di apici utilizzato:


sergio@server sergio]$ prova="ls -l"
[sergio@server sergio]$ echo "$prova"
ls -l
[sergio@server sergio]$ echo '$prova'
$prova
[sergio@server sergio]$ echo `$prova`
totale 12844 -rw-rw-r-- 1 sergio sergio 649155 ott 23 17:50
folding-20041023.ps drwxr-xr-x 4 sergio sergio 4096 ott 26 17:39
foldingAThomeSempron -rw-rw-r-- 1 sergio sergio 12458066 ott
25 17:55 folding.tar.gz drwxrwxr-x 2 sergio sergio 4096 ott 17
23:11 internet -rw------- 1 sergio sergio 2056 ott 17 15:16
mbox -rw-rw-r-- 1 sergio sergio 39 ott 24 15:44 sleep
drwxrwxr-x 2 sergio sergio 4096 ott 17 01:14 tmp
[sergio@server sergio]$


Grazie Sergio! :D
Sei stato chiarissimo!!!! :zizi:

Grazie anche a tutti gli altri per l'aiuto! :yuppi:

Loading