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"
    • coleman
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      My variant (u mean “up” in my head)

      alias u  ='cd ..'
      alias uu ='cd ../..'
      alias uuu='cd ../../..'
      
    • cheerupcharlie@lemm.ee
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year 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
      }
      
  • cybersandwich@lemmy.world
    link
    fedilink
    English
    arrow-up
    10
    ·
    edit-2
    1 year ago

    mkcd() { mkdir -p “$1” && cd “$1”; }

    Make a directory and immediately cd into it. I rarely make a directory and not cd into it.

  • cheerupcharlie@lemm.ee
    link
    fedilink
    English
    arrow-up
    7
    ·
    1 year 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'
    
  • jks@feddit.nl
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 year 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.

  • Lemmyin@lemmy.nz
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 year ago

    Here are mine. Sorry for the mouth full, but I think people may benefit from some of these :)

    alias ll="ls -alkhF"
    alias l="ls -1"
    
    # BE CAREFUL WITH THIS AND COULD RETURN COLOR KEYCODES INTO PIPES ETC...
    alias grep='grep --color=always' 
    
    alias db='dotnet build'
    
    alias gs='git status'
    alias gf='git fetch'
    alias gl='git pull'
    alias gp='git push'
    alias gpt='git push --tags'
    alias gP='git push --force-with-lease'
    alias ga='git add'
    alias gd='git diff'
    alias gw='git diff --word-diff'
    setopt interactive_comments
    preexec(){ _lc=$1; }
    alias gcm='git commit -m "${_lc#gcm }" #'
    
    # THE BELOW TO BE USED ALONG WITH THE FOLLOWING GIT ALIASES:
    #[alias]
    #	logo = log --pretty=tformat:'%C(auto,red)%m %C(auto,yellow)%h%C(auto,magenta) %G? %C(auto,blue)%>#(12,trunc)%ad %C(auto,green)%<(15,trunc)%aN%C(auto,reset)%s%C(auto,red) %gD %D' --date=short
    #	adog = log --all --decorate --oneline --graph
    #	dog = log --decorate --oneline --graph
    
    alias glog='git logo'
    alias gdog='git dog'
    alias gadog='git adog'
    
    alias gb='git branch'
    alias gba='git branch --all'
    alias gco='git checkout'
    alias gm='git merge'
    alias gt='git tag | sort -V | tail'
    
    alias rl='source ~/.zshrc'
    alias n='nvim'
    
    # LIST PATHS OF OTHER ZSH SHELLS I HAVE OPEN
    lssh() {
    	ps au \
    		| awk '$11 == "-zsh" || $11 == "/bin/zsh" { print $2 }' \
    		| xargs pwdx \
    		| awk '{ print $2 }' \
    		| sed -n "\|^${2}.*|p" \
    		| sort -u \
    		| nl
    }
    
    # CD TO SHELL NUMBER RETURNED BY LSSH
    cdsh() {
    	cd $(lssh \
    		| sed "$1!d" \
    		| cut -f 2)
    }
    
    # CD TO PATH OF ANOTHER SHELL, USING FZF AS SELECTOR
    cs() {
    	cmd1=$(lssh | fzf --select-1 --query "$1" --height=~50 | cut -f 2)
    	cmd="cd $cmd1"
    	print -S $cmd
    	eval $cmd
    }
    
    # RUN THE COMMAND FROM HISTORY, USING FZF AS SELECTOR, ALTERNATIVE TO <C-R>
    hf() {
    	cmd=$(history 0 | sort -nr | cut -c 8- | fzf -e --select-1 --no-sort --query "$1" )
    	# push the command into the history
    	print -S $cmd
    	eval $cmd
    }
    
    # REMMINA USING THE CONNECTION FILE SELECTED USING FZF
    rf() {
    	pushd ~/.local/share/remmina
    	cmd=$(remmina -c $(ls $PWD/* | fzf -e --select-1 --no-sort --query "$1"))
    	# push the command into the history
    	print -S $cmd
    	eval $cmd
    	popd
    }
    
  • turdas@suppo.fi
    link
    fedilink
    English
    arrow-up
    4
    ·
    1 year ago

    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
    }
    
  • 𝕨𝕒𝕤𝕒𝕓𝕚@feddit.de
    link
    fedilink
    English
    arrow-up
    4
    ·
    1 year 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'
    
  • z3bra@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    1 year ago

    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.

      • z3bra@lemmy.sdf.org
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year 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.

  • bahmanm
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    1 year ago
    alias et='emacsclient -ct'
    alias ec='emacsclient -cn'
    alias make='make --warn-undefined-variables'
    
  • rakstar@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year 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.