[Risolto]stampare log di risposta a comando in un file

Linguaggi di programmazione: php, perl, python, C, bash, ecc.

[Risolto]stampare log di risposta a comando in un file

Messaggioda Montanaro » martedì 9 luglio 2019, 14:14

ciao ragazzi

avrei bisogno di una spiegazione.


devo prendere i log di connessione del bt.

dando il comando rfcomm /dev/rfcomm0 MAC 1
faccio connettere il mio computer ad un dispositivo.

per vedere se è connesso posso fare
hcitool con
oppure
rfcomm

e stampare il risultato in un file.

tuttavia questi se il dispositivo non è connesso mi stampano il nulla.


so che la risposta al lancio del comando (rfcomm dev/rfcomm0 ...) è:
Codice: Seleziona tutto
can't connect RFCOMM socket : host is down

in assenza di un dispositivo a cui connetterlo.

perchè lo vedo a shell.

ed è appunto questo che io vorrei stampare in un file.

esiste una istruzione da shell per cui posso stamparlo in un file (ovviamente sto facendo questo perchè il programma deve tentare di connettersi ad un dispositivo e vogliamo visualizzare, tra le altre cose, nei log quando si connette e quando no )
Ultima modifica di Montanaro il mercoledì 10 luglio 2019, 9:36, modificato 1 volta in totale.
Montanaro
Prode Principiante
 
Messaggi: 116
Iscrizione: aprile 2018
Desktop: ubuntu
Distribuzione: linux embedded 3.10.17
Sesso: Maschile

Re: stampare log di risposta a comando in un file

Messaggioda UbuNuovo » martedì 9 luglio 2019, 15:37

Se l'output è in standard output, puoi usare:
Codice: Seleziona tutto
COMANDO >> log.txt

Il file log.txt sarà creato nella directory di esecuzione del comando, altrimenti puoi indicare un percorso di salvataggio:
Codice: Seleziona tutto
COMANDO >> /dir/che/vuoi/tu/log.txt
Nel caso in cui sia il primo a rispondere ad una richiesta di aiuto...chiunque abbia una soluzione migliore o anche solo diversa dalla mia è incoraggiato ad intervenire liberamente senza inviarmi alcun messaggio privato. In programmazione è basilare sapere che si può ottenere il medesimo risultato utilizzando metodi diversi.
Avatar utente
UbuNuovo
Imperturbabile Insigne
Imperturbabile Insigne
 
Messaggi: 3396
Iscrizione: dicembre 2009
Desktop: Mate
Distribuzione: Ubuntu 14.04
Sesso: Maschile

Re: stampare log di risposta a comando in un file

Messaggioda Montanaro » martedì 9 luglio 2019, 16:08

UbuNuovo Immagine ha scritto:Se l'output è in standard output, puoi usare:
Codice: Seleziona tutto
COMANDO >> log.txt

Il file log.txt sarà creato nella directory di esecuzione del comando, altrimenti puoi indicare un percorso di salvataggio:
Codice: Seleziona tutto
COMANDO >> /dir/che/vuoi/tu/log.txt



si ho fatto cos

Codice: Seleziona tutto
rfcomm /dev/rfcomm0 MAC 1 >>  /home/…./Log.txt 


ma non mi salva nulla
Montanaro
Prode Principiante
 
Messaggi: 116
Iscrizione: aprile 2018
Desktop: ubuntu
Distribuzione: linux embedded 3.10.17
Sesso: Maschile

Re: stampare log di risposta a comando in un file

Messaggioda UbuNuovo » martedì 9 luglio 2019, 16:22

Forse l'output è sullo standard error, prova così:
Codice: Seleziona tutto
COMANDO >> file.txt 2>&1
Nel caso in cui sia il primo a rispondere ad una richiesta di aiuto...chiunque abbia una soluzione migliore o anche solo diversa dalla mia è incoraggiato ad intervenire liberamente senza inviarmi alcun messaggio privato. In programmazione è basilare sapere che si può ottenere il medesimo risultato utilizzando metodi diversi.
Avatar utente
UbuNuovo
Imperturbabile Insigne
Imperturbabile Insigne
 
Messaggi: 3396
Iscrizione: dicembre 2009
Desktop: Mate
Distribuzione: Ubuntu 14.04
Sesso: Maschile

Re: stampare log di risposta a comando in un file

Messaggioda Montanaro » mercoledì 10 luglio 2019, 9:35

UbuNuovo Immagine ha scritto:Forse l'output è sullo standard error, prova così:
Codice: Seleziona tutto
COMANDO >> file.txt 2>&1



ciao
si così funziona grazie :)

questo vale sono in messaggio di errore vero?
se la connessione ha successo non dovrò scrivere il 2>&1 ?
Montanaro
Prode Principiante
 
Messaggi: 116
Iscrizione: aprile 2018
Desktop: ubuntu
Distribuzione: linux embedded 3.10.17
Sesso: Maschile

Re: stampare log di risposta a comando in un file

Messaggioda UbuNuovo » mercoledì 10 luglio 2019, 12:56

Montanaro Immagine ha scritto:...
questo vale sono in messaggio di errore vero?
...

No, sul file viene salvato sia lo stdout che lo stderror, se vuoi che venga salvato solo lo stderror puoi usare '2>', in append mode '2>>'
Codice: Seleziona tutto
COMANDO 2>> log.txt


guarda: https://it.perlmaven.com/stdout-stderr-and-redirection
e
http://www.pluto.it/files/ildp/guide/ab ... ction.html
Nel caso in cui sia il primo a rispondere ad una richiesta di aiuto...chiunque abbia una soluzione migliore o anche solo diversa dalla mia è incoraggiato ad intervenire liberamente senza inviarmi alcun messaggio privato. In programmazione è basilare sapere che si può ottenere il medesimo risultato utilizzando metodi diversi.
Avatar utente
UbuNuovo
Imperturbabile Insigne
Imperturbabile Insigne
 
Messaggi: 3396
Iscrizione: dicembre 2009
Desktop: Mate
Distribuzione: Ubuntu 14.04
Sesso: Maschile


Torna a Programmazione

Chi c’è in linea

Visualizzano questa sezione: 0 utenti registrati e 1 ospite