I learned to write scripts on Windows Powershell and got spoiled by everything being an object so when I started writing bash scripts I think 90% of the work is trying to parse the raw text output of commands with things like awk or sed.
Linux
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
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
i love this person's work; i've been working in the linux sphere for over 20 years but this person always teaches something that's new to me and more helpful than the tools i've been using to get the job done; sed/awk in this case. (plus, the sense of humor also makes it fun to watch).
i wish i were as rich as my fellow software engineers so that i can support her work because i'm convinced we need it in a world where people no longer have the same opportunities i had to learn this kind of tech because their smartphones inadvertently hide needful knowledge in the abstractions that make smartphones work.
She does a great job. Im trying to add in a couple of her videos when I see them into the different communities. I usually go to awk
to be honest, so I completely blanked on columns
. I knew it existed from like 10 years ago, but forgot what I can use it for. I learned something form this video :)
We need more entertaining Linux/open source people.
We need more entertaining Linux/open source people.
i think that this is what sets her apart from most; the sense of humor makes the video edit entertaining to watch like the on screen comments.
Veronica is awesome and deserves a bigger following, no doubt.
I've been following her for the past year, it's a pity she doesn't have a one time contribution scheme set up. I also can't support everyone but judging from the donations on KDE people do tend to give small amounts and it really helps. Gonna try to contact her and see if she can accept something like that
I doubt anyone has ever regretted spending some time familiarizing themselves with the POSIX, util-linux, and GNU coreutils commands. You can do a lot by just piping these (mostly) simple tools together.
Something else, all of the GNU coreutils have their own info [command]
terminal command, and often the info page is incredibly easy to read, full of example pages and highly granular descriptions of flags, error messages, and the like.
Yeah GNU’s info
pages are often more detailed than the man
pages.
Is awk
the best POSIX-compliant column
emulator?
I would say sed.
Really cool tool
Her mentions of awk reminded me of a guy at my last job who was an absolute god with awk, but making changes to scripts he made were a nightmare because no one else could figure out what he was doing, and everything crashed and burned from small changes.
Sometimes a small python script that is readable is better for long term support.
Sometimes
Always*
Shell scripting for serious tasks should crash and burn, wherever possible at least
Documentation & comments... the most underated part of any system
Oh I've done some wicked shit with awk that things literally magic
Awk is ok but often when I come across a script that I need to optimize because it's too slow, the easiest gains come from replacing awk command. Most of them use awk for the most mundane stuff that can easily be done with shell parameter expansion instead.
mount | column -t -s " "
Ahhhh...sanity. Thanks lovely Internet lady
Damn, I could've avoided hours of scrolling up by now if I knew about this before.
If I need the top lines I usually just pipe output to less
, but column
is definitely going to help a lot!
That's the first time i read about column....
cat /dev/hda1 | column | lolcat
This was a new one for me and I've been playing with linux for years. Also really enjoyed her video style so delved into some others.
Thanks for sharing!
Veronica is long in my playlists, never disappointed
Yeah, not sure how I missed this one!
It's one of the few things that I think Powershell did more cleanly than Linux, was making those kind of options a lot clearer and pushing people to use them early on in education cycles, so knowledge of these cmdlets is more common than the Linux equivalents. (I know that's harder to do with an all-volunteer OS built from the ground up versus a private company influencing education cycles, obviously. Linux always had the harder road.)
Format-Custom
, Format-Hex
, Format-List
, Format-Table
, and Format-Wide
are pretty indispensable when working with Powershell.
Because precisely, 90% of the time, when it comes to Linux, the way you're taught is to just grep
what you need out.
I've taken classes for both Powershell and Linux command line in college, and the PS class focused a lot on those commands while the Linux class never once mentioned column
while spending a lot of time on grep
.
I’ve taken classes for both Powershell and Linux command line in college, and the PS class focused a lot on those commands while the Linux class never once mentioned column while spending a lot of time on grep.
column
belongs to util-linux
A Linux class. Never mentioned column
. Mind == boggled.
Ironically grep
is its own program. Although commonly it's the GNU one, so could be considered in the same group as coreutils.
Funnily enough, I use PowerShell as my daily driver and I rarely ever use the Format verb cmdlets and think they need to stop teaching people to use them as much as they do... They're only meant to modify how things are displayed, but in doing so, they trash the objects that were on the pipeline and replace them with formatting commands, and cause confusion when people try to do something with what they output
The worst is using them to select properties, they should not have included that ability at all, that's what the Select-Object cmdlet is for, which outputs usable objects
Anyway, sorry for the rant... I just think those overall teach new users bad habits.
Don't be sorry for having an opinion, and that's a pretty mild one all things considered.
Yup, found it just the other day when I wanted to have ls -l
output in multiple columns instead of a single one.
I have, but I also learned a few new things about column from this video, nice!
column -s baby
baby separated values?
it's like CSV, but larger and keeps you awake at night
Of yes, I have!
alias nfsmounts='mount | grep "nfs" | column'
When I first learned Unix (and then Linux) I just went through /usr/bin and looked at the man page for everything.
Then I browsed through the gnu info pages for bash.
There's no real alternative to RTFM.
I'm still sore that column -nts,
doesn't work anymore. My mnemonic for remembering it was "unts, unts, unts" like a dance club beat.
Actually looking at the usage text I'm not sure how the -n
flag ever worked for me... Maybe I'm misremembering.
Yeah but I keep trying to pipe the output back into the original file which ends up empty due to how pipe and redirect interact.
I know there must be a grown-up way to do it but I inevitably resort to writing it to filename2 and then running mv filename2 filename.