get the user input in awk

You can collect user input using the getline function. Make sure to set this in the BEGIN block. Here’s the contents of script.awk:

BEGIN {
    printf "Enter the student's name: "
    getline name < "-"
}

$2 == name {
    print
}

Here’s an example file with ID’s, names, and results:

1 jonathan good
2 jane bad
3 steve evil
4 mike nice

Run like:

awk -f ./script.awk file.txt

Leave a Comment