Condividi:        

comandi linux

Per tutti i tuoi problemi Linux entra qui e risolvili!

Moderatori: Anthony47, gunter, zendune

comandi linux

Postdi vassily » 22/11/05 19:28

salve vorrei avere alcune delucidazioni su alcuni comandi e altre cosette
1. come faccio a redirigere lo stderr su una variabile invece che se un file?
2.il comando rsync nell'opzione -n visualizza alcuni parametri (WROTE) (READ) diversi dalla dimensione reale dei file da copiare (TOTAL SIZE).Come si calcolano simili parametri e come si calcolano lo SPEED UP e la VELOCITA'?
3.quando un comando come cp stampa a video un errore diverso per ogni situazione da gestire pur avendo come exit status sempre 1 come faccio a emularlo gestendo ogni singolo caso?

grazie a tutti
vassily
Newbie
 
Post: 1
Iscritto il: 22/11/05 19:23

Sponsor
 

Re: comandi linux

Postdi rita » 23/11/05 00:20

vassily ha scritto:1. come faccio a redirigere lo stderr su una variabile invece che se un file?

Niente di più facile...
Codice: Seleziona tutto
stderr = $stderr
stderrin, $stderr = IO.pipe

puts "Script pc-facile.com"

tmp = $stderr
$stderr = stderr
$tmp.close
variable = stderrin.readlines.join("\n")

2.il comando rsync nell'opzione -n visualizza alcuni parametri (WROTE) (READ) diversi dalla dimensione reale dei file da copiare (TOTAL SIZE).

E' normalissimo, non vedo dove sta la meraviglia. Tanto per fare un esempio, per fare copie di (o trasferire) file, sempre in dry-run, i parametri cambiano a seconda che si usi il comando "cp -p" o si permetta alla copia di avere un modtime diverso. Eppure sono sempre gli stessi file!

Come si calcolano simili parametri e come si calcolano lo SPEED UP e la VELOCITA'?

Simili parametri dipendono fortemente da come i file vengono trattati, non esiste una risposta di massima. Nella fattispecie, il valore di speedup e la velocità vengono calcolati nella stessa maniera di come vengono calcolati in una sessione FTP, ovvero facendo una media pesata tra il tempo di trasferimento del file e la sua dimensione.

3.quando un comando come cp stampa a video un errore diverso per ogni situazione da gestire pur avendo come exit status sempre 1 come faccio a emularlo gestendo ogni singolo caso?

E per quale arcano motivo devi gestire ogni singolo caso sulla base dell'exit status?!? :undecided:
---
"Possiamo vedere solo con il cuore. L'essenziale e' invisibile agli occhi".
rita
Utente Senior
 
Post: 139
Iscritto il: 23/08/01 01:00
Località: Catania

Postdi disgrazia » 23/11/05 22:53

Mo vidico la mia...

1) Io farei così: supponendo che cmd sia un programma che produce output su stderr, in bash puoi usare questo:
Codice: Seleziona tutto
output=`cmd 2>&1`

@rita: ma che codice è quello che hai riportato?

2) rsync non manda il file completo ma invia solo le differenze con eventuali versioni precedenti del file. Per questo motivo, a meno che tutti i file non debbano venir creati ex novo, i bytes trasferiti sono inferiori ai bytes totali dei file presi in considerazione. Lo speedup è il rapporto tra bytes totali e bytes trasferiti, è una misura dell'efficienza del trasferimento differenziale utilizzato da rsync.

3) Ma cosa devi fare? Una cosa del genere la vedo molto facile se devi scrivere o modificare un programma in C o altri linguaggi di programmazione, da shell la vedo più complicata e non ne capisco molto l'utilità.... magari dacci un po' più di dettagli su quello che vuoi fare ;)
disgrazia
Download Admin
 
Post: 708
Iscritto il: 08/07/02 22:16


Torna a Software Linux


Topic correlati a "comandi linux":

Comandi spariti
Autore: Ricky0185
Forum: Software Windows
Risposte: 1
stampante Ricoh per Linux
Autore: pol133
Forum: Software Linux
Risposte: 3

Chi c’è in linea

Visitano il forum: Nessuno e 11 ospiti