Skip to content

Instantly share code, notes, and snippets.

@jbourassa
Last active December 15, 2015 13:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jbourassa/5267853 to your computer and use it in GitHub Desktop.
Save jbourassa/5267853 to your computer and use it in GitHub Desktop.
Dompter la ligne de commande

Dompter la ligne de commande

Bébé-référence des concepts / trucs présentés lors du OpenCode #10

Naviguer dans les commandes

Vitesse de répétition

OSX

Par le commandline:

# Repeat delay
defaults write NSGlobalDomain InitialKeyRepeat -int 12

# faster key repeat
defaults write NSGlobalDomain KeyRepeat -int 0

Avec un GUI : KeyRemap4MacBook

Les autres

Google?

Shortcuts

Par défaut, bash, zsh et readline utilisent les emacs keybindings (cheatsheet) pour naviguer.

Pour utiliser les emacs keybidings, il faut activer la touche meta (M). Dans bien des cas, elle sert pour écrire [, ], {, }, etc; ce n'est donc pas la configuration par défaut. Le truc est de changer une seule des deux touches alt en touche meta. Dans iTerm2 : iTerm -> Preferences -> Profiles -> Keys -> Left | Right option acts as +Esc

iTerm2 meta config

On peut aussi changer les keybindings en vi-mode facilement pour bash, zsh et readline.

STDIN, STDOUT, Pipes

On peut manipuler très très facilement les stream standard de Unix pour mettre ensemble plusieurs outils, sans devoir se bourrer le crâne d'éléments de syntaxe.

Quelques usecases :

# Chercher dans les noms de fichiers.
# Plus "facile" que de mémoriser la syntaxe de find
$ find . | grep 

# Copier sa clé publique (sur OSX)
$ cat ~/.ssh/id_rsa.pub | pbcopy

# Voir uniquement un ip dans les logs
tail -f var/whatever.log | grep 124.222.11.55

Alias

[Alias](http://en.wikipedia.org/wiki/Alias_(command\)). Sur tout. vraiment tout. Quelques exemples :

be='bundle exec'
g=git
ga='git add'
ip='dig +short myip.opendns.com 2@resolver1.opendns.com'
iplocal='ipconfig getifaddr en0'
v=vim
m=mvim
pg_start='pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start'
pg_stop='pg_ctl -D /usr/local/var/postgres stop -s -m fast'    
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment