I really like how nushell can parse output into it's native structures called tables using the detect
command.
Unlike string outputs, tables allow for easy data manipulation through pipes like select foo
will select foo key and you can filter and even reshape the datasets.
This is great if you need to work with large data pipes like kuberneters so you can do something like:
kubectl get pods --all-namespaces | detect columns | where $it.STATUS !~ "Running|Completed" | par-each { |it| kubectl -n $it.NAMESPACE delete pod $it.NAME }
This looks complex but it parses kubectl table string to table object -> filters rows only where status is not running or completed -> executes pod delete task for each row in parallel.
Nushell take a while to learn but having real data objects in your terminal pipes is incredible! Especially with the detect
command.
There's are few more shells that do that though nu is the most mature one I've seen so far.
tldr
is great. Basically a crowd-sourced alternative to man
with much more concise entries. Example:
$ tldr dhcpcd
DHCP client.
More information: <https://roy.marples.name/projects/dhcpcd>.
Release all address leases:
sudo dhcpcd --release
Request the DHCP server for new leases:
sudo dhcpcd --rebind
As primarily a Windows admin (Yes, we exist on Lemmy ;) ) here are few I use often.
Enter-PSSesion
Get-ADUser
(also group and computer)CLS
(aka the superior clear
)ii .
(short for Invoke-Item .
which runs the selected object using the default method. For paths (like .
) the default is explorer, so ii .
opens the current directory using explorer.)ft
(short for Format-Table
formats piped input as a table.)fl
(short for format-like
. Used like ft
but for lists.)Where-Object
Select-Object
I've recently started using tmux
when starting a new SSH session to try to build the habit.
I often play an old DOS game in DOSBox, and when I exit it doesn't reset the screen resolution. So I reset it manually by typing
xrandr -output e-DP1 -auto
For Debian based/descended distros:
sudo apt-get update && sudo apt-get upgrade
And technically I also regularly use
redshift -O 3000
all of the blue light filter programs try to align themselves with a user's geographic location and time, but I don't keep normal hours
I would but much like somebody else's recent post I have in the past nuked my install by blindly agreeing to some recommended software removals before. These days I like to double check what packages are being updated and replaced.
g-push
which is alias for
git push origin `git branch --show`
Which I'm writing on my phone without testing or looking
In my ~/.bashprofile:
alias resource="source ~/.bashprofile"
In my terminal:
resource
Anything to save a few characters
omz reload
not going to say zsh is better than bash or fish, but oh-my-zsh does make it more attractive for some use-cases
diff -y -W 200 file1 file2
Shows a side by side diff of 2 files with enough column width to see most of what I need usually.
I have actually aliased this command as diffy
ctrl-r
searching bash history
du -sh * | sort -h
shows size of all files and dirs in the current dir and sorts them in ascending order so you can easily see the largest files or dirt ant the end of the list
ls -ltr
Shows the most recently modified files at the end of the listing.
xdg-open FILE
- opens a file with the default GUI app. I use it for example to open PDFs and PNG. I have a one letter alias for that. It can also open a file explorer in the current directory xdg-open .
. Should work on any compliant desktop environment (gnome/kde).