145
submitted 6 months ago by netwren@lemmy.world to c/linux@lemmy.ml

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
[-] Ramin_HAL9001@lemmy.ml 14 points 6 months ago* (last edited 6 months ago)

I used to use the command line, Bash, Awk, Sed, Cut, Grep, and Find (often piped to one another) quite often. I can recall that the few times I used Awk was usually for collating lines from logs or CSV files.

But then I switched to using Emacs as my editor, and it gathers together the functionality of all of those tools into one, nice, neat little bundle of APIs that you can easily program in the Emacs Lisp programming language, either as code or by recording keystrokes as a "macro."

Now I don't use shell pipelines hardly at all anymore. Mostly I run a process, buffer its output, and edit it interactively. I first edit by hand, then record a macro once I know what I want to do, then apply the macro to every line of the buffer. After that, I might save the buffer to a file, or maybe stream it to another process, recapturing its output. This technique is much more interactive, with the ability to undo mistakes, and so it is easier to manipulate data than with Awk and shell pipelines.

[-] netwren@lemmy.world 2 points 6 months ago

This is fascinating to me. Do you have any links or suggestions for this workflow to learn more?

[-] Ramin_HAL9001@lemmy.ml 4 points 6 months ago* (last edited 6 months ago)

This is fascinating to me. Do you have any links or suggestions for this workflow to learn more?

I am glad you asked, because I actually wrote a series of blog posts on the topic of how Emacs replaced my old Tmux+Bash CLI-based workflow. The link there is to the introductory article, in the "contents" section there are links to each of the 4 articles in the series. The "Shell Basics" (titled "Emacs as a Shell") might be of particular interest to you.

If you have any specific questions, or if you have recommendations for something you think you would like to learn from one of my blog posts, please let me know. I would like to write a few more entries in this blog series.

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

Linux

45530 readers
2111 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