he/they/whatever

¡ACHTUNG!

• profanity

• 9front and Plan 9 enthusiast

• BSD and Linux fanatic

• FOSS zealot

• subgenius intellect

gıen, a pᒐunkᒐiy™

  • 0 Posts
  • 3 Comments
Joined 1 year ago
cake
Cake day: June 3rd, 2023

help-circle


  • A different way to do the usual ..="cd .." and endless chains of ...="cd ../.." types of aliases:

    bash/ksh version:

    ..() {
        local count="${1:-1}"
        local path="../"
        while (( --count > 0 )); do
            path="$path../"
        done
        cd -- "$path"
    }
    

    zsh single-line version:

    ..() { cd $(printf "../%.s" {1..${1:-1}}) }
    

    These take the number of directories that you want to move up as an argument (e.g. .. 3), otherwise they move you up one directory when used with no arguments.