this post was submitted on 30 Dec 2023
144 points (96.2% liked)

Linux

48429 readers
692 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Studying and awk came up.

Spent about an hour and I see some useful commands that extend past what "cut" can do. But really when dealing with printf() format statements is anyone using awk scripts for this?

Or is everyone just using their familiar scripting language. I'd reach for Python for the problems being presented as useful for awk.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 8 points 11 months ago* (last edited 11 months ago)

I think it's pretty niche but is a great tool for parsing / converting data into a format that is more easily digested by another program.

Think for example a report from an 80's system that spits out many tab separated values in a different format based on some code. Then these tables are all separated by two blank lines and order of them is randomised. To top that off you need to then pipe it all to a different program that only accepts a specific format.

You could do it in Python by doing a parse, process, stringify code but if you know awk you can do all those steps at the same time with less code.

Sure, in the age of REST the Python approach is better but awk is a very powerful tool for the "I have a specific output but need a specific input" problem.