Articles of awk

Come posso passare variabili da awk a un comando shell?

Sto cercando di eseguire un comando shell da awk per ogni riga di un file, e il comando shell ha bisogno di un argomento di input. Ho provato a usare system() , ma non ha riconosciuto l’argomento di input. Ogni riga di questo file è un indirizzo di un file e voglio eseguire un comando […]

Come aggiungo una riga di testo al centro di un file usando bash?

Sto cercando di aggiungere una riga di testo al centro di un file di testo in uno script bash. Specificamente sto provando ad aggiungere un nameserver al mio file /etc/resolv.conf. Così com’è, resolv.conf si presenta così: # Generated by NetworkManager domain dhcp.example.com search dhcp.example.com nameserver 10.0.0.1 nameserver 10.0.0.2 nameserver 10.0.0.3 Il mio objective è aggiungere […]

Tab valori separati in awk

Come seleziono la prima colonna dalla stringa TAB separata? # echo “LOAD_SETTLED LOAD_INIT 2011-01-13 03:50:01″ | awk -F’\t’ ‘{print $1}’ Quanto sopra restituirà l’intera riga e non solo “LOAD_SETTLED” come previsto. Aggiornare: Devo cambiare la terza colonna nei valori separati da tabulazione. Quanto segue non funziona. echo $line | awk ‘BEGIN { -v var=”$mycol_new” FS […]

Come ottenere la seconda colonna dall’output del comando?

L’output del mio comando è qualcosa del tipo: 1540 “AB” 6 “C” 119 “D” La prima colonna è sempre un numero, seguito da uno spazio, quindi una stringa doppia citazione. Il mio scopo è quello di ottenere solo la seconda colonna, come: “AB” “C” “D” Intendevo usare | awk ‘{print $2}’ | awk ‘{print $2}’ […]

Come posso formattare l’output di un comando bash in colonne pulite

Ho una funzione che emette molte righe di informazioni che voglio formattare in colonne. Il problema è che la larghezza di una particolare “cella” (se posso usare quel termine) di dati è variabile, quindi collegarla a qualcosa come awk non mi dà quello che voglio. La funzione è “chiavi” (non che importi) e sto provando […]

Stampa la penultima colonna / campo in awk

Voglio stampare la penultima colonna o campo in awk. Il numero di campi è variabile. So che dovrei essere in grado di usare $NF ma non sono sicuro di come possa essere usato. E questo non sembra funzionare: awk ‘ { print ( $NF– ) } ‘

awk print column $ 3 se $ 2 == un valore specifico?

Sto imparando awk dal linguaggio di programmazione awk ed essendo infastidito da questo esempio. Se voglio stampare $ 3 se $ 2 è uguale a un valore (es. ‘1’), e stavo usando questo comando che funziona bene: awk ‘$2==1 {print $3}’ | more Ma quando sostituisco 1 con altri criteri di ricerca, ad esempio “trova […]

trova la differenza tra due file di testo con un elemento per riga

Ho due file: file 1 dsf sdfsd dsfsdf file 2 ljljlj lkklk dsf sdfsd dsfsdf Voglio visualizzare ciò che è nel file 2 ma non nel file 1, quindi il file 3 dovrebbe essere simile ljljlj lkklk

Usando Awk o Sed per virare su un enunciato alla fine di una linea specifica

Ho un file che ho chiamato poscar1.cif , e vorrei inserire il contenuto di una variabile su una linea specifica in questo file. Ad esempio, la riga 24 , che attualmente legge: _cell_length_a Vorrei aggiungere il contenuto della mia variabile a (definito nella mia funzione come a=5.3827 ) in modo tale che la riga ora […]

awk analizza le coppie chiave = valore in variabili

Ho un sacco di diversi tipi di file che ho bisogno di guardare periodicamente, e ciò che hanno in comune è che le linee hanno un sacco di stringhe di tipo key=value . Quindi qualcosa come: Version=2 Len=17 Hello Var=Howdy Other Mi piacerebbe poter fare riferimento ai nomi direttamente da awk … quindi qualcosa come: […]