this post was submitted on 03 Jul 2023
26 points (93.3% liked)

Linux

56020 readers
1587 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 6 years ago
MODERATORS
26
submitted 2 years ago* (last edited 2 years ago) by MoriGM@feddit.de to c/linux@lemmy.ml
 

What are your most liked alias for long commands or just to give them better names.

Mine are:

alias load="source .load.sh"
alias eload="$EDITOR .load.sh"
alias gpush="git push"
alias gadd="git add --all"
alias gcommit="git commit -m "
alias gst="git status -s"
alias gpull="git pull"
top 50 comments
sorted by: hot top controversial new old
[–] docrobot@lemmy.sdf.org 7 points 2 years ago (1 children)

alias weather='curl wttr.in'

[–] cheerupcharlie@lemm.ee 1 points 2 years ago

I found a function version of this version somewhere. Same thing except it defaults to my local area but can be overridden if you specify a different zip code.

weather() {
 if [ $(command -v curl) ]; then
   if ! (($#)); then
     curl wttr.in/44113
   else
     curl wttr.in/$1
   fi
 else
   echo "curl not installed. Aborting."
 fi
}
[–] xycu@programming.dev 5 points 2 years ago (2 children)

alias ll="ls - l"

My most-used, by far, for decades.

[–] nihilomaster@lemmy.ml 4 points 2 years ago

For just a second I thought this was Loss

[–] TheyCallMeHacked@discuss.tchncs.de 4 points 2 years ago (1 children)

This and alias la="ls -lhA"

[–] walthervonstolzing@lemmy.ml 2 points 2 years ago

In addition to this, I have lat & las with -t & -s sorting added respectively.

[–] Plasma@lemmy.ml 5 points 2 years ago (2 children)
[–] coleman@lemmy.ml 2 points 2 years ago

My variant (u mean "up" in my head)

alias u  ='cd ..'
alias uu ='cd ../..'
alias uuu='cd ../../..'
[–] oldfart@lemm.ee 1 points 2 years ago

AmigaOS style!

[–] jks@feddit.nl 5 points 2 years ago

Not exactly an alias but a short script. First, get git-revise which is a replacement for git rebase, and fzf if for some reason you don't have it yet. Then make a script in your ~/.local/bin called git-f or whatever you'd like:

#!/bin/bash
REF=${1:-origin/main}  # adjust to your favorite trunk branch name
COMMIT=$(git log --pretty=oneline ${REF}.. \
         | fzf --preview "git show -p --stat {+1}" | cut -d' ' -f1)
if [ -n "$COMMIT" ]; then
    exec git revise "$COMMIT"
else
    exit 1
fi

Now hack away in a branch, make some commits, and at some point you will realize you want to modify an earlier commit. Use git add -p to add the relevant lines, but then instead of making a fixup commit just type git f and pick the target commit from the list.

[–] cheerupcharlie@lemm.ee 4 points 2 years ago

I always set these because I've been burned too many times:

Turn on interactive mode for dangerous commands

alias cp='cp -iv'
alias mv='mv -iv'
alias rm='rm -iv'
[–] turdas@suppo.fi 4 points 2 years ago (1 children)

I use this function to launch GUI apps from the shell without occupying that shell or cluttering it with their output:

nown() {
        if [ -n "$1" ]
        then
                nohup $@ &> /dev/null & disown
        else
                echo "Don't give me a null command dumbass."
        fi
}
[–] MoriGM@feddit.de 1 points 2 years ago

I maybe will steal that for myself.

[–] demonsword@lemmy.world 3 points 2 years ago (1 children)

alias fuck='sudo $(fc -ln -1)'

[–] xavier666@lemm.ee 1 points 2 years ago (1 children)
[–] demonsword@lemmy.world 1 points 2 years ago (1 children)

yeah, I could do that. Kinda prefer to use my alias anyway as the expletive is almost always the first word that comes to mind when I forget to sudo something

[–] xavier666@lemm.ee 2 points 2 years ago (1 children)

Can't argue with that but it reminds me of thefuck which is similar but does more

[–] demonsword@lemmy.world 2 points 2 years ago

thanks for that link!! I'm going to try it out :)

[–] rakstar@lemmy.world 3 points 2 years ago

Technically not aliases but I have these in my ~/.bash_aliases so...

bind '"\e[A": history-search-backward'
bind '"\e[B": history-search-forward'

Type a few letters and press up/down arrow to scroll through matching history entries.

Also...

alias s="cd -"

It's like Alt+Tab for CLI.

[–] wasabi@feddit.de 3 points 2 years ago
alias clearswap='sudo swapoff -a && sudo swapon -a'
alias grep='grep --color=auto'
alias ls='ls --color=auto --group-directories-first'
alias la='ls -lAh --color=auto --group-directories-first'
alias timestamp='date +%Y-%m-%dT%H-%M-%S'
[–] swodig@mander.xyz 3 points 2 years ago

alias ta="tmux attach -t"

[–] mpiepgrass@lemmy.world 3 points 2 years ago* (last edited 2 years ago)

alias upd=“yay -Syu --devel”

alias cleanup=“yay -Qdtq | yay -Rns-”

alias mirror=“sudo reflector --verbose --country ‘United States’ --protocol https --latest 15 --sort rate --save /etc/pacman.d/mirrorlist && sudo eos-rankmirrors”

[–] literally1848@programming.dev 3 points 2 years ago

alias clearswap='sudo swapoff -a && sudo swapon -a

alias reload='source ~/.bashrc'

scan_local() {

 local_ip=$(ip addr show wlan0 | grep "inet " | awk '{print $2}' | awk -F '/' '{print $1}')

 sudo nmap -sn "$local_ip/24"

}

[–] wgs@lemmy.sdf.org 2 points 2 years ago* (last edited 2 years ago) (1 children)

I made a cool exercise some time ago: checking my top 10 used commands, to see how I can "optimize" them, and maybe create a few aliases to save a few keystrokes. Turns out I don't need that much aliases in the end:

alias v='vis' # my text editor
alias sv='doas vis'
alias ll='ls -l'

And that's pretty much it ^^ I do have a lot of scripts though, some of them being one-liners, but it makes them shell independent, which I like :)

For reference, here is my analysis of my top 10 most used commands.

edit: I do have a bunch of git aliases though for common subcommands I use. I prefer using them as git <alias> over using she'll specific aliases so I can always type "git" and not mentally think wether I need a git command or a shell alias.

[–] MoriGM@feddit.de 1 points 2 years ago (1 children)

Vis nether heard of this editor

[–] wgs@lemmy.sdf.org 1 points 2 years ago

Then you should definitely check it out: vis.

Its original goal was to be a vim clone with 90% of the features in 10% of the code. Then it grew into being the bastard son of Vim and Sam editors (plan9's structural regex based editor).

The result is vis, an editor with vim like navigation and text manipulation mechanics, but with access to Sam's powerful structural regex commands which works selection wise, rather than likewise like vim. Check this paper to learn about it: struct-regex.pdf.

[–] brad@toad.work 2 points 2 years ago

Here's my .bash_aliases file

Good luck, I'm dogshit at maintaining the comments lol

[–] SexualPolytope@lemmy.sdf.org 2 points 2 years ago (1 children)

I don't use aliases. Since I use fish as a login shell, I use abbreviations. I have a lot of them configured. But I think my favorite one is yeet which expands to paru -Rcns.

[–] MoriGM@feddit.de 1 points 2 years ago

What a nice abbreviation of the conventional way of declaring the minimanalasation of a command. I need to check out fish but i don't really know about it so much.

[–] GustavoM@lemmy.world 2 points 2 years ago* (last edited 2 years ago) (1 children)

*ahem

alias brb='paru -Syu --noconfirm && paru -Sc --noconfirm'

[–] gbin@lemmy.ca 3 points 2 years ago

You should name it alias btw=... to fully embrace our stereotype ;).

[–] gbin@lemmy.ca 2 points 2 years ago (1 children)

Interesting, git do support aliases too. "git st" etc What is .load.sh?

[–] MoriGM@feddit.de 1 points 2 years ago

I mostly write my environment and aliases which are only ment to be used for a project by creating a file called .load.sh. It is mostly just things like alias run="python main.py" or something

[–] JaffaBoy@lemmy.world 2 points 2 years ago* (last edited 2 years ago)

For git and working with a mix of master and main default branch repos my favourite is gsm='git switch $(git_main_branch)' to switch back to main/master

[–] bahmanm@lemmy.ml 2 points 2 years ago* (last edited 2 years ago)
alias et='emacsclient -ct'
alias ec='emacsclient -cn'
alias make='make --warn-undefined-variables'
[–] knobbysideup@lemm.ee 2 points 2 years ago
become="sudo su -"
pb="ansible-playbook"
[–] CsXGF8uzUAOh6fqV@lemmy.world 1 points 2 years ago (1 children)

Selection of my fish abbreviations for comfy terminal creatures:

# MISC -----------------
abbr -a la 'exa -la'
abbr -a p 'python'
abbr -a v 'nvim'
abbr -a rmd 'rm -rf'
abbr -a feh 'feh --scale-down -d'
abbr -a ka 'doas killall'
abbr -a fp 'ffplay'
abbr -a ff 'firefox'
abbr -a tree 'exa -T'
abbr -a libver 'dpkg -l | grep'
abbr -a ex 'chmod +x'
# specific file and directory based
abbr -a notes 'nvim ~/.vimwiki/index.md'
abbr -a idir 'cd ~/some/important/dir'
abbr -a fishconf 'nvim ~/.config/fish/config.fish'
abbr -a vimconf 'nvim ~/.config/nvim/init.vim'
abbr -a i3conf 'nvim ~/.config/i3/config'
# PACMAN ---------------
abbr -a pin 'doas pacman -S'
abbr -a pun 'doas pacman -Rns'
abbr -a pss 'pacman -Ss'
abbr -a pls 'pacman -Qd'
abbr -a aurls 'paru -Qm'
abbr -a pct 'pacman -Q | wc -l'
abbr -a syu 'paru -Syu'
abbr -a pcl 'paccache -r -k 1; paru --cc;'
abbr -a pfd 'pacman -Qs'
# GIT ------------------
abbr -a ga 'git add -A; git status'
abbr -a gr 'git reset'
abbr -a gd 'git diff'
abbr -a gc 'git commit -m'
abbr -a gdc 'git diff HEAD~0 --stat'
abbr -a gl 'git log'
abbr -a gb 'git branch'
abbr -a gp 'git push origin'
abbr -a gch 'git checkout'
abbr -a gam 'git commit --amend - m'
abbr -a gcl 'git clone'
# RUST -----------------
abbr -a cc 'cargo clippy --all-features'
abbr -a ccc 'cargo check'
abbr -a cb 'cargo build'
abbr -a cr 'cargo run'
abbr -a cbr 'cargo build --release'
abbr -a crr 'cargo run --release'
abbr -a ct 'cargo test'
abbr -a ctt 'cargo tarpaulin --ignore-tests --skip-clean'
abbr -a bacon 'bacon clippy-all -w'
abbr -a cil 'cargo install --path ./'
abbr -a cia 'cargo install-update -a'
abbr -a ca 'cargo add'
[–] MoriGM@feddit.de 1 points 2 years ago (1 children)

I maybe steal your rust aliases What is bacon by the way?

[–] CsXGF8uzUAOh6fqV@lemmy.world 2 points 2 years ago

Bacon is just compiler output but it "stays open" in your terminal and refreshes after you save your file; It is nice if you use something a bit minimal like vim without language server but you don't want to compile manually every time.

[–] BendyLemmy@lemmy.ml 1 points 2 years ago

TTIME (abbr - not alias)

abbr -a -- ttime date\ \'+It\ is\ \%-H\ \%M\ and\ \%S\ seconds\'\|espeak\ \>/dev/null\ 2\>/dev/null # imported from a universal variable, see `help abbr`
[–] maiskanzler@feddit.de 1 points 2 years ago

dc="docker-compose" saves me soooo much time!

load more comments
view more: next ›