Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Extrahieren Sie bestimmte Felder aus einer Textdatei

Dies ähnelt der Antwort von MvG, erfordert jedoch kein gawk 4 und verwendet daher -F wie in dieser Antwort vorgeschlagen. Es zeigt auch eine Technik zum Auflisten der gewünschten Felder und zum Iterieren über die Liste. Dies kann die Pflege des Codes erleichtern, wenn es eine große Liste gibt.

#!/usr/bin/awk -f
BEGIN {
    col_list = "colour shape size" # continuing with as many as desired for output
    num_cols = split(col_list, cols)
    FS = OFS = ","
}

NR==1 {
    for (i = 1; i <= NF; i++) {
        p[$i] = i # remember column for name
    }
    # next # enable this line to suppress headers.
}

{
    delim = ""
    for (i = 1; i <= num_cols; i++) {
        printf "%s%s", delim, $p[cols[i]]
        delim = OFS
    }
    printf "\n"
}