Get Last Field with awk

awk with $NF awk with $NF

New Help at Unix Tutorial feature (right bottom of every page) I launched over the weekend is great! Even a few hours I’m online each moring and each evening are giving me plenty of opportunities to meet visitors and to help with Unix questions. Today I discussed awk fields delimiter with someone, speicifcally the part of showing the last field in a string.

NF Variable in awk Awk has a number of built-in variables. NF is one of them – it shows the total number of https://www.unixtutorial.org/awk-field-separatorfields in a given string that awk just finished parsing. Used with the $ macro, NF becomes $NF and gives you the awk field number NF – which is the last field in an awk string.

If we have a DIRNAME variable with a typical full path, like this:

[email protected]:~ $ DIRNAME=/Users/greys/proj/unixtutorial
[email protected]:~ $ echo $DIRNAME
/Users/greys/proj/unixtutorial

… then it’s possible to get the name of the last subdirectory in DIRNAME using awk and $NF:

[email protected]:~ $ echo $DIRNAME | awk -F\/ '{print $NF}'
unixtutorial

That’s it – as simple as that!

See Also




Keep Learning

Follow me on Facebook, Twitter or Telegram:
Recommended
I learn with Educative: Educative I'm also a fan of SetApp for macOS: SetApp for macOS
IT Consultancy
I'm a principal consultant with Tech Stack Solutions. I help with cloud architectrure, AWS deployments and automated management of Unix/Linux infrastructure. Get in touch!
Recent Articles
17 Nov 2022

Video: awk delimiters

25 Oct 2022

macOS Ventura 13.0

21 Oct 2022

Video: How To Generate ed25519 key

Recent Tweets