tool για διευκόλυνση σύνταξης bash one-liners που επεξεργάζονται κείμενο (grep, sed, awk, sort ...)

Christos Ricudis ricudis at itc.auth.gr
Wed Dec 2 17:42:18 EET 2009


Christos Ricudis wrote:
> Nick Demou wrote:
>> μια φορά στο τόσο γράφω τερατάκια σαν αυτό:
>>
>> grep 911456 * | grep -v "<tt>" |  grep "<dt>" | sed -e "s/^.*<dt>//"
>> -e "s/<\/dt>.*<f>[^:]*sp:/ ; /" -e "s/#.*<t>[^:]*sp:/ ; /" -e
>> "s/#.*<ts>/ ; /" -e "s/<\/ts>.*$//"| sed -e
>> "s/\([^;]*\);\([^;]*\);\([^;]*\);\([^;]*\)/ \4 ; \2; \3; \1/" | sort |
>> uniq -c | sort -nr
>>
>> δηλαδή απλές κατά βάση εντολές που παίρνουν text input και το
>> επεξεργάζονται η μία μετά την άλλη. Παρότι οι επί μέρους εντολές είναι
>> απλές μετά από ένα σημείο είναι λογικό να χάνεις την μπάλα και να
>> προχωράς μέχρι την ολοκλήρωση του one-liner αργά και βασανιστικά.
> ΕΙΝΑΙ αργο και βασανιστικο. Δεν ξερω ποσο syntax highlighting μπορεις 
> να κανεις σε κατι τοσο generic οσο το sh command line. Παντως το vim 
> μετα την εντολη :syntax enable εβαλε μπολικα χρωματακια και τα εβαλε 
> στα σωστα σημεια στο παραπανω script.

... πραγμα που ειναι αρκετα σχετικο, βεβαια. Στην προκειμενη περιπτωση, 
εχουμε τρια επιπεδα στο περιεχομενο: Το ιδιο το shell script, τα regular 
expressions που περνας στην sed, και την HTML που περιεχουν τα regular 
expressions. Αρνουμαι να δεχτω οτι καποιος εχει κατσει να φτιαξει κατι 
που να "καταλαβαινει" εστω και κατι περισσοτερο απο το πρωτο επιπεδο.


More information about the Linux-greek-users mailing list