ho bisogno di un 1liner per rimuovere i primi 5 caratteri su qualsiasi riga di un file di testo, ma non so sed, qualcuno potrebbe aiutarmi per favore?elimina i primi 5 caratteri su qualsiasi riga di un file di testo in sed con
risposta
sed 's/^.....//'
significa
replace ("s", sostituto) inizio-of-line poi 5 caratteri ("") con niente.
Ci sono modi più compatti o flessibili per scrivere questo usando sed o tagliare.
Come lo faresti per l'ultimo carattere di una stringa? – blarg
@blarg prova 'sed 's /.$//'' –
più 1 per rispondere alla parte 'con sed' della domanda e poi menzionare che 'cut' è meglio –
sed 's/^.\{,5\}//' file.dat
BSD sed non accetta il limite * al massimo * ('{, 5}'), questo è specifico per GNU. Un'espressione che funziona su entrambi sarebbe 'sed 's/^. \ {5 \} //' file.dat' – Tristan
awk '{print substr($0,6)}' file
domanda simile http://stackoverflow.com/questions/971879/what-is-a-unix-command-for-deleting-the-first-n-characters-of-a-line – dogbane