salve a tutti, dto realizzando uno script che salva in un file .csv informazioni sui processi con il comando ps :

ps ax -o user,pid,command,start,cputime | tail -n +2 | sed "s/ */;/g" > temp.csv

solamente che quando vado a prendere il quarto campo, non sempre mi dovrebbe restituire un orario. Infatti ci sono alcuni nomi di programmi che contengono uno spazio e andando a sostituire gli spazi con ";" col comando sed non sempre si riscontrare un orario.

Il seguente pezzo di codice cerca di prelevare l'ora ma prende sempre la strada dell'else:

ifData=echo $row | cut -f$count -d";"if [[echo $ifData | egrep -q "[0-9]{4}:[0-9]{2}:[0-9]{4}"]]; then echo "La data è $ifData" else echo "il quarto campo non è una data!!!" fi

Qualche idea?

Questa domanda è segnata come "wiki".

chiesto 31 Mar, 17:38

cappe's gravatar image

cappe
202

(01 Apr, 03:53) marcobra marcobra's gravatar image

O meglio:


ps ax -o user,pid,command,start,cputime | tail -n +2 | cut --output-delimiter="," -b 1-9,10-14,15-42,43-51,52-64 > /tmp/mydata.csv
coll. permanente

ha risposto 01 Apr, 22:37

marcobra's gravatar image

marcobra
8992519

Quella cosa l'ho fatta col sed e funziona

La cosa a cui non riesco trovare soluzione è un'espressione regolare, dentro l'if, che mi riconosca la stringa dentro la variabile 'ifData' come ORARIO nel formato hh:mm:ss

(03 Apr, 16:22) cappe cappe's gravatar image
La tua risposta
abilita/disabilita anteprima

Segui questa domanda

Via email:

Una volta eseguito l'accesso potrai iscriverti a tutti gli aggiornamenti qui

Via RSS:

Risposte

Risposte e commenti

Basi di markdown

  • *corsivo* o __corsivo__
  • **grassetto** o __grassetto__
  • collegamento:[testo](http://url.com/ "titolo")
  • immagine?![alt testo](/path/img.jpg "titolo")
  • elenco numerato: 1. Foo 2. Bar
  • per aggiungere un'interruzione di riga, aggiungi due spazi a fine riga e premi «Invio»
  • è supportato anche semplice HTML

Tag:

×36

domanda posta: 31 Mar, 17:38

domanda visualizzata: 51 volte

ultimo aggiornamento: 03 Apr, 16:23

Chiedi è un servizio di supporto gestito da Ubuntu-it. Contattaci!

powered by OSQAPostgreSQL database
Ubuntu e Canonical sono marchi registrati da Canonical Ltd.