modern cli toolsgpu based terminal emulators: alacritty & kitty exiftool, remove exif data ....
TRANSCRIPT
![Page 2: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/2.jpg)
Learn CLI tools you have not heard about. Increase your productivity
Today's goal
![Page 3: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/3.jpg)
UIs solve different issues
⏯ UIs help to reduce complexity
UIs will help newcomers
UIs look nicer
GOAT: The web!
Don't spew on UIs
![Page 4: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/4.jpg)
Scripting
Speed
Flexibility
Automation
Why CLI tools then?
![Page 5: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/5.jpg)
🛠 Process safety
Expert mode
Issue: Outdated distribution packages
Do one thing and do it well!
Why CLI tools then?
![Page 6: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/6.jpg)
Many tools still stem from the early UNIX times
Rise of the developer
UTF8
Colors
🏎 Faster terminals
Debugging (ephemeral containers, no local logs, remote)
Modern CLI tools?
![Page 7: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/7.jpg)
Rust
Go
Crystal
JVM: GraalVM, Kotlin Native, Scala Native
Zig
V
New languages
![Page 8: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/8.jpg)
Binary as a result, best startup time
No C/memory management learning required
Faster development
New languages
![Page 9: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/9.jpg)
in combination with oh-my-zsh
scripting syntax similar to bash
lots of plugins for easier development
Shell - zsh
![Page 10: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/10.jpg)
bash
fish
nushell
Shell - alternatives
![Page 11: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/11.jpg)
![Page 12: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/12.jpg)
Shell Prompt - GBT
![Page 13: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/13.jpg)
Shell Prompt - GBT
![Page 14: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/14.jpg)
Shell Prompt - Starship
![Page 15: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/15.jpg)
Make sure you alias what you type often!
.. - ll
Shell aliases
![Page 16: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/16.jpg)
wd
![Page 17: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/17.jpg)
Ctrl+R triggers history search
Extremely powerful
Ensure your history gets written after command execution instead of logout
Shell history search
![Page 18: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/18.jpg)
lsd
![Page 19: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/19.jpg)
a better ls
colored output
relative/absolute timestamps
file type icons (nerdfonts)
tree view
total directory size view
lsd
![Page 20: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/20.jpg)
bat
![Page 21: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/21.jpg)
cat with wings
Syntax highlighting & themes
Line highlighting
Range snippets (no more cat | head | tail parties)
git integration
builtin pagination
bat
![Page 22: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/22.jpg)
fd
![Page 23: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/23.jpg)
a better find, very similar syntax
colors!
takes .gitignore into account
case-insensitive by default
regexes
parallel command execution (when used with -x )
fd
![Page 24: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/24.jpg)
ripgrep
![Page 25: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/25.jpg)
It's fast!
match patterns across newlines
takes .gitignore into account
skips dot files and binary files
recursive && regexing by default
replacement of matched text
ripgrep-all to search in binary files
ripgrep
![Page 26: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/26.jpg)
htop
![Page 27: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/27.jpg)
prettyping
![Page 28: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/28.jpg)
hyperfine
![Page 29: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/29.jpg)
JSON coloring
![Page 30: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/30.jpg)
JSON selection
![Page 31: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/31.jpg)
JSON selection
![Page 32: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/32.jpg)
curl -s 'localhost:9200/_cat/indices?format=json' \ | jq -C -r \ '[ .[] | select ( .index | startswith(".") | not) ] | sort_by(.index) | .[].index' \ | fzf
fzf
![Page 33: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/33.jpg)
curl -s 'localhost:9200/_cat/indices?format=json' \ | jq -C -r \ '[ .[] | select ( .index | startswith(".") | not) ] | sort_by(.index) | .[].index' \ | fzf
![Page 34: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/34.jpg)
bandwhich
![Page 35: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/35.jpg)
ytop
![Page 36: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/36.jpg)
procs
![Page 37: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/37.jpg)
dust
![Page 38: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/38.jpg)
JVM: sdkman
nodejs: nvm
ruby: rvm
Problem: per project requirements
version managers
![Page 39: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/39.jpg)
.envrc
layout node export NODE_VERSIONS=~/.nvm/versions/node export NODE_VERSION_PREFIX='v' use node 15.11.0 dotenv
direnv - unclutter your profile
![Page 40: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/40.jpg)
.env
DB_USERNAME="sa" DB_PASSWORD="" DB_URL="jdbc:h2:mem:foo_in_memory;MODE=PostgreSQL;DB_CLOSE_DELAY=-1;DATABASE_TO_UPPER=false"
Run direnv allow after a change
direnv - unclutter your profile
![Page 41: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/41.jpg)
envchain --set my_app DB_PASSWORD
envchain ./gradlew run
envchain - store secrets securely
![Page 42: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/42.jpg)
Better diffs
![Page 43: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/43.jpg)
colordiff
![Page 44: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/44.jpg)
icdiff
![Page 46: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/46.jpg)
GPU based terminal emulators: alacritty & kitty
exiftool, remove exif data exiftool -all= my.png
tmux - next session will be all about tmux!
sd, a faster sed alternative
zoxide, a new cd that remembers your most common paths
Honorable mentions
![Page 47: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/47.jpg)
rlwrap, a readline wrapper
cli, the github cli tool
taskwarrior, the CLI todo management tool
Honorable mentions
![Page 48: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/48.jpg)
Note taking tool, that automatically syncs in the cloud/via git
Time tracking?
What are your favourite tools? Feel free to ping (twitter, email, linkedin,whatever)
Missing
![Page 50: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/50.jpg)
direnv
envchain
fish shell
Starship
fd
bat
hyperfine
Resources
![Page 51: Modern CLI toolsGPU based terminal emulators: alacritty & kitty exiftool, remove exif data . exiftool -all= my.png. tmux - next session will be all about tmux! sd, a faster sed alternative](https://reader035.vdocument.in/reader035/viewer/2022071603/613e313959df642846165ee0/html5/thumbnails/51.jpg)
ripgrep
ripgrep-all
Grep tools feature comparison
Rewritten in Rust: Modern Alternatives of Command-Line Tools
Command Line Interface Guidelines
A better zsh history
Resources