Live data from Hacker News

Ask HN: Best Command-Line Applications?

news.ycombinator.com

21–30 of 393 posts

Re: Ask HN: Best Command-Line Applications?

#21
rsync. It’s installed everywhere and makes it super easy to keep source code in sync between laptop and remote servers. It’s so fast that I completely ignore more advanced solutions based on fanotify or similar, and literally include rsync before every “build/run” command during development.

Re: Ask HN: Best Command-Line Applications?

#22

I'm not big on applications, period. Activities should be decomposed (or at least decomposable) into individual actions that I can stitch together in the shell.

Aren’t those individual actions still applications? I don’t know what you mean?

Re: Ask HN: Best Command-Line Applications?

#23
rg (ripgrep): https://github.com/BurntSushi/ripgrep

I used to use ag (the silver searcher) [1] before, and `ag` was practically a muscle memory to me, but then I came across ripgrep and it was so much faster. I've now installed a static binary of ripgrep in every machine I have SSH access to.

[1] https://github.com/ggreer/the_silver_searcher

Re: Ask HN: Best Command-Line Applications?

#24

For working on servers, tmux + mosh is a killer combination: mosh makes your connection resilient to network issues and tmux gives you (back) scrollback and cross-session persistence. mutt is hard to beat as an email client and circe (an emacs package) + znc on a digital ocean instance or equivalent makes for a great persistent irc session.

Mosh also makes it possible to have an ssh client running on a mobile device and still use the mobile device as a mobile.

Re: Ask HN: Best Command-Line Applications?

#25

youtube_dl an ffmpeg would be my top two in terms of power. Here are my top commands by frequency of use: 4421 git 952 open 936 vim 908 cd 603 ls 566 grep 533 cp 429 rm 414 mv 250 atom 247 pip 233 mkdir 223 fab 163 docker 130 touch 128 find 123 youtube-dl 113 python 103 ssh 100 cat 99 wget 81 pytest 75 brew total is of ~16k history lines... this means one in ever 4 commands I type is git! Wow I didn't know that. Prob…

I use git so much that I made these aliases in zsh:

    alias g="git show"
    alias gh="git show HEAD"
    alias gs="git status"
    alias gl="git log"
    alias gco="git checkout"
    alias gd="git diff"
    alias gbl="git branch -v"
    alias gbd="git branch -D"
    alias gri="git rebase --interactive"
    alias grc="git rebase --continue"
    alias gra="git rebase --abort"
    alias gst="git stash"
    alias gsta="git stash apply"
    alias gx="gco -- \*; git reset HEAD \*"
    alias gcp="git cherry-pick"
    alias gcpc="git cherry-pick --continue"
    alias gcpa="git cherry-pick --abort"
A few hundred instances of "gs" in my .zhistory :)

Re: Ask HN: Best Command-Line Applications?

#26
* fish - essential prerequisite in order to live in the command line

* autojump (aka j) - for changing directories quickly

* open - required to interact with the non-cli world, ships by default on macOS and here's one for Windows/WSL: https://github.com/neosmart/open

* imgpaste - for pasting screenshots into a PNG or JPEG directly (https://github.com/neosmart/imgpaste)

* pbpaste - for pasting into the shell (or if you're on Linux or Windows: https://github.com/mqudsi/fish-config/blob/master/functions/...)

* fzf - a general-purpose "selector" ui for choosing "things" from a list based off, such as your history (bound to ctrl+r) or files in a directory (bound to ctrl+p with input generated by bfs or fd)

* neovim - my configuration here: https://github.com/mqudsi/nvim-config

* ripgrep - for finding strings in files

* fd - for finding files quickly

* sed (with -r) - insanely powerful for common string operations

* tr - lets you deal with line endings, which sed can't

* youtube-dl - download youtube videos from the CLI

* curl/httpie - (scriptable) network requests

* aria2c - high-speed (multi-threaded) downloads and torrent downloads, it just works

* jq - for manipulating json in shell scripts

* ncdu - find space taken up by directories/files, but it's aging and in need of a dire rewrite like fd/rg did for find/grep

* pbedit - edit the contents of the clipboard in your favorite editor https://github.com/mqudsi/fish-config/blob/master/functions/...

* weechat - irc in your command line

* ffmpeg - except I am much more likely to use it via one of the wrapper fish scripts I've written such as ffencode, fftrim, ffconcat, ffmute, etc. because it is (necessarily) so damn verbose and infinitely tunable.

* tmux - if I'm working remotely or on a headless machine where I can't just ctrl+shift+n to open a new terminal window (which I prefer)

Post reply on HN