Newsgroup: it.comp.os.linux.sys
Titolo: Grep: messaggio di errore se non trova

Spero di non essere OT chiedendo qua.
Vorrei che se eseguo una cosa tipo
grep '1234567' myfile.txt
e '1234567' non e' stato trovato, mi appaia un messaggio di errore (di 
una linea) tipo
"Error: non found".
Ho letto man grep ma non ho trovato questa opzione. In uno script per 
ora ho scritto
grep '1234567' myfile.txt
if test $? -ne 0; then
  echo "Not found"
fi
ma e' un po' lungo e a volte scomodo.
Suggerimenti?
Grazie,
Lorenzo

 Suggerimenti?
grep ago /pagliaio || echo "not found"
La prima cosa che mi � venuta in mente ;-)
Enrico

 "Error: non found".
grep -q '1234567' myfile.txt || echo "Error: non found"
-- 
Professional System & Network Sarcazzer
http://bofhskull.wordpress.com/

 grep ago /pagliaio || echo "not found"
       ^^^^^^^^^^^^^
ROTFLONE :-D
-- 
Massimo Bacilieri AKA Crononauta


Grazie mille, e' esattamente quello che cercavo!





Facebook: Massimo Bacilieri

 1
E cosi` si chiude il cerchio perche' era quello che faceva nella sua
soluzione (1o msg di questo thread).
Andrea

 soluzione (1o msg di questo thread).
Vacca boia, quel sangiovese "Selex" da 90 centesimi era piï¿œ tossico di
quello che pensavo :-O
Fare la congiunzione logica in OR in effetti equivale nï¿œ piï¿œ nï¿œ meno a
testare il return code, sotto i fumi di quel veleno non me n'ero neanche
accorto... :-O


 accorto... :-O
Non era tanto una questione di equivalenza, quanto che l'OP (che non so 
che sia o voglia dire, ma ho visto che qui acronimizzano cosi` chi fa 
una domanda - luogo che vai acronomizzazione che trovi) era partito 
proprio esponendo quella soluzione basata sul return code, che trovava 
macchinosa, ed effettivamente quella basata sull'OR e` molto piu` 
elegante, anche se formalmente pelosa, nel senso che funziona e ha una 
logica, ma e` uno sporco trucco sul quale per altro si basa parecchia 
programmazione shell (anche con l'AND, oltre che con l'OR).
Andrea
P.S.: consiglio invece i vini Lidl ed ESSELUNGA in offerta (si trovano 
cose decenti a prezzi ragionevoli, anche se non certamente dei 90 cent x 
750 cc).

 750 cc).
Grazie ma a Ravenna Esselunga non c'ï¿œ :-/
Qui ci sono Coop, Famila e Conad. Poi ci sono i discount tipo Lidl,
Sigma, Penny. Vabbï¿œ amen, basta evitare il Sangiovese Selex (anche la
marca sembra piï¿œ da preservativi che da vini... :-O ).


 marca sembra piï¿œ da preservativi che da vini... :-O ).
La Coop c'e` anche qui, ma per i vini e` decisamente cara e non e` che 
sia molto meglio anche per il resto, a meno di sconti episodici e 
particolari o di cappellate degli addetti alle vendite e restituzioni.
Avevo comperato del materiale informatico, uno schermo, a prezzo 
stracciato, che pero` aveva molti pixel bruciati e valeva tutto quello 
che costava, anche in sconto, cioe` molto poco.
L'ho riportato, ho chiesto indietro i soldi e mi hanno ridato il prezzo 
intero, non quello scontato che avevo pagato, nonostante glielo facessi 
presente ribattevano con decisione e sicurezzza con un'argomentazione 
insensata (tipo che lo sconto era su tutta la spesa, cosa vera, ma 
irrilevante ai fini del rimborso dato che era una percentuale fissa 
sulla spesa che quindi era stata applicata anche al prezzo del monitor) 
al che non mi sono messo a litigare e li ho lasciati fare. Fosse stato 
un amico o un parente, l'avrei fatto (di litigare nel loro interesse), 
ma la coop sei tu fino ad un certo punto
(ho la coscienza linda: in fondo sarei potuto anche star zitto 
dall'inizio senza fargli notare la ca....ta che stavano facendo).