Use long option name

This commit is contained in:
Jeremy Gardais 2023-07-21 09:55:15 +02:00
parent f6d8dfd620
commit a227d02a2c
Signed by: jegardai
GPG Key ID: E759BAA22501AF32
1 changed files with 68 additions and 71 deletions

139
zshrc
View File

@ -28,18 +28,18 @@ if [ ! $(command -v exa) ]; then
## with ls {{{ ## with ls {{{
alias ll='ls -l' alias ll='ls -l'
## Show hidden files ## Show hidden files
alias la='ll -A' alias la='ll --almost-all'
## Show hidden only ## Show hidden only
alias lla='la --directory .*' alias lla='la --directory .*'
alias l.='ls -d .*' alias l.='ls --directory .*'
alias llh='ll -l | head' alias llh='ll | head'
alias llm='ll -l | $PAGER' alias llp='ll | $PAGER'
alias llw='ls | wc -l' alias llw='ll | wc --lines'
## Sort by date ## Sort by date
alias lll='ls -l -t -h -r' alias lll='ls -l -t --human-readable --reverse'
alias llll='ls -l -t -h -r' alias llll='ls -l -t --human-readable --reverse'
alias lld='ls -l -d */ -h' alias lld='ls -l --directory */ --human-readable'
alias lr='ls -R | grep ":$" | sed -e '\''s/:$//'\'' -e '\''s/[^-][^\/]*\//--/g'\'' -e '\''s/^/ /'\'' -e '\''s/-/|/'\''' alias lr='ls --recursive | grep ":$" | sed -e '\''s/:$//'\'' -e '\''s/[^-][^\/]*\//--/g'\'' -e '\''s/^/ /'\'' -e '\''s/-/|/'\'''
## }}} ## }}}
## with exa {{{ ## with exa {{{
else else
@ -48,29 +48,29 @@ else
alias la='ll --all --sort .name' alias la='ll --all --sort .name'
## Show hidden only ## Show hidden only
alias lla='ll --list-dirs .*' alias lla='ll --list-dirs .*'
alias l.='ls -d .*' alias l.='ls --directory .*'
alias llh='ll | head' alias llh='ll | head'
alias llm='ll | less' alias llp='ll | $PAGER'
alias llw='ls | wc -l' alias llw='ll | wc --lines'
## Sort by date ## Sort by date
alias lll='ll --sort=modified' alias lll='ll --sort=modified'
alias llll='ll --sort=modified' alias llll='ll --sort=modified'
## Give a tree of current directory ## Give a tree of current directory
alias llt='ll --tree' alias llt='ll --tree'
alias lld='ll --group-directories-first' alias lld='ll --group-directories-first'
alias lr='ls -R | grep ":$" | sed -e '\''s/:$//'\'' -e '\''s/[^-][^\/]*\//--/g'\'' -e '\''s/^/ /'\'' -e '\''s/-/|/'\''' alias lr='ls --recursive | grep ":$" | sed -e '\''s/:$//'\'' -e '\''s/[^-][^\/]*\//--/g'\'' -e '\''s/^/ /'\'' -e '\''s/-/|/'\'''
## }}} ## }}}
fi fi
# }}} # }}}
# cat with number on output lines # cat with number on output lines
alias ca='cat -n' alias ca='cat --number'
# docker related # docker related
alias d='docker' alias d='docker'
# Correct ip command # Correct ip command
alias ipa='ip a' alias ipa='ip a'
# less with raw character # less with raw character
alias less='less -r' alias less='less --rawcontrolchars'
#alias less='less --quiet' #alias less='less --quiet'
# Call last command # Call last command
alias pp='fc -e -' alias pp='fc -e -'
@ -101,7 +101,6 @@ if [ ${USER} != "root" ]; then
alias si='sudo iptables -L -vn ' alias si='sudo iptables -L -vn '
alias sj='sudo journalctl ' alias sj='sudo journalctl '
alias sn='sudo nft list ruleset' alias sn='sudo nft list ruleset'
alias sp='sudo puppet agent -t '
alias sv='sudo vi ' alias sv='sudo vi '
alias sz='sudo zsh' alias sz='sudo zsh'
else else
@ -111,7 +110,6 @@ else
alias si='iptables -L -vn ' alias si='iptables -L -vn '
alias sj='journalctl ' alias sj='journalctl '
alias sn='nft list ruleset' alias sn='nft list ruleset'
alias sp='puppet agent -t '
alias vi='vi -S ~/.vim/vimrc ' alias vi='vi -S ~/.vim/vimrc '
alias sv='vi -S ~/.vim/vimrc ' alias sv='vi -S ~/.vim/vimrc '
fi fi
@ -149,23 +147,23 @@ if [ -d /etc/apt ]; then
alias asho='aptitude show' alias asho='aptitude show'
alias aver='apt-show-versions' alias aver='apt-show-versions'
alias awhy='aptitude why' alias awhy='aptitude why'
alias insexperimental='sudo aptitude -t experimental install' alias insexperimental='sudo aptitude --target-release experimental install'
fi fi
# }}} # }}}
# Grep aliases {{{ # Grep aliases {{{
alias grep='grep --color=always -i ' alias grep='grep --color=always --ignore-case '
alias gerp='grep -i' alias gerp='grep --ignore-case'
alias Grep='\grep ' alias Grep='\grep '
alias gdpkg='dpkg -l | grep -E -- ' alias gdpkg='dpkg --list | grep --extended-regexp -- '
alias gmount='mount | grep -E -- ' alias gmount='mount | grep --extended-regexp -- '
alias gdf='df | grep -E -- ' alias gdf='df | grep --extended-regexp -- '
# }}} # }}}
# Espace disque # Espace disque
alias df='df -kTh' alias df='df --block-size=1K --print-type --human-readable'
alias dus='du -ch|sort -h' alias dus='du --total --human-readable | sort --human-numeric-sort'
alias dua='du -ach|sort -h' alias dua='du --all --total --human-readable | sort --human-numeric-sort'
alias ncdu='gdu' alias ncdu='gdu'
# Gestion des processus: # Gestion des processus:
@ -175,10 +173,10 @@ if [ ! -f "`which htop`" ]; then
fi fi
# Qu'est-ce qui consomme de la mémoire vive sur le système # Qu'est-ce qui consomme de la mémoire vive sur le système
alias wotgobblemem='ps -o time,ppid,pid,nice,pcpu,pmem,user,comm -A | sort -n -k 6 | tail -15' alias wotgobblemem='ps -o time,ppid,pid,nice,pcpu,pmem,user,comm -A | sort --numeric-sort --key=6 | tail -15'
# ps aliases # ps aliases
alias px='ps faux|grep -v grep|grep -iE -e VSZ -e ' alias px='ps faux|grep --inverse-match -- grep|grep --extended-regexp --ignore-case --regexp=VSZ -e '
## ps with fzf ## ps with fzf
alias fpx="ps -ef | fzf --bind 'ctrl-r:reload(ps -ef)' --header 'Press CTRL-R to reload' --header-lines=1 --color fg:188,bg:233,hl:103,fg+:222,bg+:234,hl+:104" alias fpx="ps -ef | fzf --bind 'ctrl-r:reload(ps -ef)' --header 'Press CTRL-R to reload' --header-lines=1 --color fg:188,bg:233,hl:103,fg+:222,bg+:234,hl+:104"
alias pxf="ps -ef | fzf --bind 'ctrl-r:reload(ps -ef)' --header 'Press CTRL-R to reload' --header-lines=1 --color fg:188,bg:233,hl:103,fg+:222,bg+:234,hl+:104" alias pxf="ps -ef | fzf --bind 'ctrl-r:reload(ps -ef)' --header 'Press CTRL-R to reload' --header-lines=1 --color fg:188,bg:233,hl:103,fg+:222,bg+:234,hl+:104"
@ -187,11 +185,10 @@ alias wps="watch \"ps faux | tail --lines=30 -- | grep --invert-match --extended
alias psw="watch \"ps faux | tail --lines=30 -- | grep --invert-match --extended-regexp '(tail|ps faux|grep)' --\"" alias psw="watch \"ps faux | tail --lines=30 -- | grep --invert-match --extended-regexp '(tail|ps faux|grep)' --\""
# Décompression # Décompression
alias untargz='tar -zxvf' alias untargz='tar --gzip --extract --verbose -f'
alias untarbz2='tar -jxvf' alias untarbz2='tar --bzip2 --extract --verbose -f'
# Terminal multiplexer # Terminal multiplexer
alias ci='screen -x ssh || screen -c ~/.screen/scr.ssh_ci'
alias ta='tmux a || tmux' alias ta='tmux a || tmux'
alias td='tmux detach' alias td='tmux detach'
@ -220,8 +217,8 @@ alias ggmv='git mv'
### Cancel changes ### Cancel changes
alias ggcheckout='git checkout --' alias ggcheckout='git checkout --'
### Print lines matching a pattern ### Print lines matching a pattern
alias ggrep='git grep --color -n -P' alias ggrep='git grep --color --line-number --perl-regexp'
alias gggrep='git grep --color -n -P' alias gggrep='git grep --color --line-number --perl-regexp'
### Show commit logs ### Show commit logs
alias gglog="git log --graph --full-history --all --color --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset'" alias gglog="git log --graph --full-history --all --color --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset'"
### Show last 20 commits with graph ### Show last 20 commits with graph
@ -229,7 +226,7 @@ alias gglg="git --no-pager log --graph --pretty=tformat:'%Cred%h%Creset -%C(auto
### Show all commits with graph ### Show all commits with graph
alias ggllg="git log --graph --pretty=tformat:'%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%an %ar)%Creset'" alias ggllg="git log --graph --pretty=tformat:'%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%an %ar)%Creset'"
### Display all commits/changes of a file ### Display all commits/changes of a file
alias ggchanges="git log --follow -p --" alias ggchanges="git log --follow --perl-regexp --"
### Commands that might require a valid gpg-agent ### Commands that might require a valid gpg-agent
#### Download any new commits #### Download any new commits
@ -244,24 +241,24 @@ alias ggpush='load-gpg-agent && git push'
## }}} ## }}}
# Lister les fichiers de configuration inutiles # Lister les fichiers de configuration inutiles
alias purge='grep-status -n -sPackage -FStatus config-files' alias purge='grep-status --no-field-names --show-field=Package --field=Status config-files'
## Piped alias ## Piped alias
alias -g H='| head' alias -g H='| head'
alias -g T='tail -f' alias -g T='tail --follow'
alias -g G='| grep -v grep | grep -E' alias -g G='| grep --invert-match grep -- | grep --extended-regexp'
alias -g L='| less' alias -g L='| less'
alias -g M="| most" alias -g M="| most"
alias -g S="| sort" alias -g S="| sort"
alias -g V="| vimmanpager" alias -g V="| vimmanpager"
alias -g W="| wc -l" alias -g W="| wc --lines"
alias -g X="| xclip -selection clipboard" alias -g X="| xclip -selection clipboard"
alias -g TM="| tmux load-buffer -- -" alias -g TM="| tmux load-buffer -- -"
alias -g B="&|" alias -g B="&|"
alias -g HL="--help" alias -g HL="--help"
alias -g MM="2>&1 | most" alias -g MM="2>&1 | most"
alias -g LL="2>&1 | less" alias -g LL="2>&1 | less"
alias -g CA="2>&1 | cat -A" alias -g CA="2>&1 | cat --show-all"
alias -g NE="2> /dev/null" alias -g NE="2> /dev/null"
alias -g NUL="> /dev/null 2>&1" alias -g NUL="> /dev/null 2>&1"
@ -290,7 +287,7 @@ alias uu='cd -'
# Afficher la pile des dossiers: # Afficher la pile des dossiers:
alias dirs='dirs -v' alias dirs='dirs -v'
# Créer les répertoires précédents si ils n'existent pas # Créer les répertoires précédents si ils n'existent pas
alias mkdir='mkdir -p' alias mkdir='mkdir --parents'
# Affiche l'arborescence du répertoire courant # Affiche l'arborescence du répertoire courant
#alias tree="find . | sed 's/[^/]*\//| /g;s/| *\([^| ]\)/+--- \1/'" #alias tree="find . | sed 's/[^/]*\//| /g;s/| *\([^| ]\)/+--- \1/'"
#La commande tree "basique" fait ça très bien ... #La commande tree "basique" fait ça très bien ...
@ -364,9 +361,9 @@ alias ktel='khard phone'
## 2. with recossh alias to load a new ssh-agent ## 2. with recossh alias to load a new ssh-agent
function load-ssh-agent() { function load-ssh-agent() {
# If a ssh-key is available # If a ssh-key is available
if find "${HOME}/.ssh" -maxdepth 1 -type f -iname "id_*" | grep -q -- .; then if find "${HOME}/.ssh" -maxdepth 1 -type f -iname "id_*" | grep --quiet -- .; then
## If ssh-agent is not already launched ## If ssh-agent is not already launched
if ! ps -x | grep -v grep | grep -Fq -- "ssh-agent -a ${SSH_AGENT_SOCK}"; then if ! ps -x | grep --invert-match -- grep | grep --fixed-strings --quiet -- "ssh-agent -a ${SSH_AGENT_SOCK}"; then
### Remove any previous socket and environment files ### Remove any previous socket and environment files
rm --force -- "${SSH_AGENT_SOCK}" "${SSH_AGENT_ENV}" rm --force -- "${SSH_AGENT_SOCK}" "${SSH_AGENT_ENV}"
### Start ssh-agent with a specified socket path ### Start ssh-agent with a specified socket path
@ -383,8 +380,8 @@ function load-ssh-ed25519() {
# If a ED25519 ssh-key is available # If a ED25519 ssh-key is available
# AND not already loaded in ssh-agent # AND not already loaded in ssh-agent
if [ -f "${SSH_ED25519_KEY}" ] && if [ -f "${SSH_ED25519_KEY}" ] &&
! ssh-add -l | grep -qi -- "(ed25519)"; then ! ssh-add -l | grep --quiet --ignore-case -- "(ed25519)"; then
ssh-add "${SSH_ED25519_KEY}" ssh-add "${SSH_ED25519_KEY}"
fi fi
} }
# }}} # }}}
@ -393,7 +390,7 @@ function load-ssh-rsa() {
# If a RSA ssh-key is available # If a RSA ssh-key is available
# AND not already loaded in ssh-agent # AND not already loaded in ssh-agent
if [ -f "${SSH_RSA_KEY}" ] && if [ -f "${SSH_RSA_KEY}" ] &&
! ssh-add -l | grep -qi -- "(rsa)"; then ! ssh-add -l | grep --quiet --ignore-case -- "(rsa)"; then
ssh-add "${SSH_RSA_KEY}" ssh-add "${SSH_RSA_KEY}"
fi fi
} }
@ -498,7 +495,7 @@ function tadel() {
# }}} # }}}
# Get task's description # Get task's description
tadel_task_desc=$(task "${tadel_task_id}" | sed -n "s/^Description *\(.*\)/\1/p") tadel_task_desc=$(task "${tadel_task_id}" | sed --quiet "s/^Description *\(.*\)/\1/p")
printf '%b' "Delete the task \"${MAGENTAB}${tadel_task_id} ${tadel_task_desc}${RESET}\" [Y/n] ? " printf '%b' "Delete the task \"${MAGENTAB}${tadel_task_id} ${tadel_task_desc}${RESET}\" [Y/n] ? "
read -r tadel_confirmation read -r tadel_confirmation
@ -545,7 +542,7 @@ function tadone() {
# }}} # }}}
# Get task's description # Get task's description
tadone_task_desc=$(task "${tadone_task_id}" | sed -n "s/^Description *\(.*\)/\1/p") tadone_task_desc=$(task "${tadone_task_id}" | sed --quiet "s/^Description *\(.*\)/\1/p")
printf '%b' "Mark the task \"${MAGENTAB}${tadone_task_id} ${tadone_task_desc}${RESET}\" as done [Y/n] ? " printf '%b' "Mark the task \"${MAGENTAB}${tadone_task_id} ${tadone_task_desc}${RESET}\" as done [Y/n] ? "
read -r tadone_confirmation read -r tadone_confirmation
@ -627,7 +624,7 @@ function tanote() {
# }}} # }}}
# Get task's description # Get task's description
tanote_task_desc=$(task "${tanote_task_id}" | sed -n "s/^Description *\(.*\)/\1/p") tanote_task_desc=$(task "${tanote_task_id}" | sed --quiet "s/^Description *\(.*\)/\1/p")
printf '%b' "Add notes to \"${MAGENTAB}${tanote_task_id} ${tanote_task_desc}${RESET}\" task [Y/n] ? " printf '%b' "Add notes to \"${MAGENTAB}${tanote_task_id} ${tanote_task_desc}${RESET}\" task [Y/n] ? "
read -r tanote_confirmation read -r tanote_confirmation
@ -757,7 +754,7 @@ function tidouble() {
# }}} # }}}
# Get task's description from all task of this year # Get task's description from all task of this year
tidouble_task_desc=$(timew summary :year :ids | sed -n "s/.*@\(${tidouble_task_id} .*\)/\1/p" | sed 's/ */ /g') tidouble_task_desc=$(timew summary :year :ids | sed --quiet "s/.*@\(${tidouble_task_id} .*\)/\1/p" | sed 's/ */ /g')
printf '%b' "Add ${tidouble_extra_time} to \"${MAGENTAB}${tidouble_task_desc}${RESET}\" [Y/n] ? " printf '%b' "Add ${tidouble_extra_time} to \"${MAGENTAB}${tidouble_task_desc}${RESET}\" [Y/n] ? "
read -r tidouble_confirmation read -r tidouble_confirmation
@ -798,7 +795,7 @@ function tirm() {
# }}} # }}}
# Get task's description from all task of this year # Get task's description from all task of this year
tirm_task_desc=$(timew summary :year :ids | sed -n "s/.*@\(${tirm_task_id} .*\)/\1/p" | sed 's/ */ /g') tirm_task_desc=$(timew summary :year :ids | sed --quiet "s/.*@\(${tirm_task_id} .*\)/\1/p" | sed 's/ */ /g')
printf '%b' "Delete to \"${MAGENTAB}${tirm_task_desc}${RESET}\" [Y/n] ? " printf '%b' "Delete to \"${MAGENTAB}${tirm_task_desc}${RESET}\" [Y/n] ? "
read -r tirm_confirmation read -r tirm_confirmation
@ -851,10 +848,10 @@ function tistart() {
# }}} # }}}
# Get time tracking's description from all time tracking of this year # Get time tracking's description from all time tracking of this year
tistart_time_desc=$(timew summary :year :ids | sed -n "s/.*@\(${tistart_time_id} .*\)/\1/p" | sed 's/ */ /g') tistart_time_desc=$(timew summary :year :ids | sed --quiet "s/.*@\(${tistart_time_id} .*\)/\1/p" | sed 's/ */ /g')
# Get time tracking's start day from all time tracking # Get time tracking's start day from all time tracking
tistart_time_start_day=$(timew export | sed -nE "s/^\{\"id\":${tistart_time_id},\"start\":\"([0-9]{4})([0-9]{2})([0-9]{2})T.*end.*/\1-\2-\3/p") tistart_time_start_day=$(timew export | sed --quiet --regexp-extended "s/^\{\"id\":${tistart_time_id},\"start\":\"([0-9]{4})([0-9]{2})([0-9]{2})T.*end.*/\1-\2-\3/p")
# Check or ask for new start time {{{ # Check or ask for new start time {{{
if [ -z "${tistart_time_new_start}" ]; then if [ -z "${tistart_time_new_start}" ]; then
@ -921,10 +918,10 @@ function tiend() {
# }}} # }}}
# Get time tracking's description from all time tracking of this year # Get time tracking's description from all time tracking of this year
tiend_time_desc=$(timew summary :year :ids | sed -n "s/.*@\(${tiend_time_id} .*\)/\1/p" | sed 's/ */ /g') tiend_time_desc=$(timew summary :year :ids | sed --quiet "s/.*@\(${tiend_time_id} .*\)/\1/p" | sed 's/ */ /g')
# Get time tracking's start day from all time tracking # Get time tracking's start day from all time tracking
tiend_time_start_day=$(timew export | sed -nE "s/^\{\"id\":${tiend_time_id},\"start\":\"([0-9]{4})([0-9]{2})([0-9]{2})T.*end.*/\1-\2-\3/p") tiend_time_start_day=$(timew export | sed --quiet --regexp-extended "s/^\{\"id\":${tiend_time_id},\"start\":\"([0-9]{4})([0-9]{2})([0-9]{2})T.*end.*/\1-\2-\3/p")
# Check or ask for new end time {{{ # Check or ask for new end time {{{
if [ -z "${tiend_time_new_end}" ]; then if [ -z "${tiend_time_new_end}" ]; then
@ -990,7 +987,7 @@ function tiduration() {
# }}} # }}}
# Get time tracking's description from all time tracking of this year # Get time tracking's description from all time tracking of this year
tiduration_time_desc=$(timew summary :year :ids | sed -n "s/.*@\(${tiduration_time_id} .*\)/\1/p" | sed 's/ */ /g') tiduration_time_desc=$(timew summary :year :ids | sed --quiet "s/.*@\(${tiduration_time_id} .*\)/\1/p" | sed 's/ */ /g')
# Check or ask for new end time {{{ # Check or ask for new end time {{{
if [ -z "${tiduration_time_new_duration}" ]; then if [ -z "${tiduration_time_new_duration}" ]; then
@ -1051,10 +1048,10 @@ function timove() {
# }}} # }}}
# Get task's description from all task of this month # Get task's description from all task of this month
timove_time_desc=$(timew summary :month :ids | sed -n "s/.*@\(${timove_time_id} .*\)/\1/p" | sed 's/ */ /g') timove_time_desc=$(timew summary :month :ids | sed --quiet "s/.*@\(${timove_time_id} .*\)/\1/p" | sed 's/ */ /g')
# Get time tracking's start day from all time tracking # Get time tracking's start day from all time tracking
timove_time_start_day=$(timew export | sed -nE "s/^\{\"id\":${timove_time_id},\"start\":\"([0-9]{4})([0-9]{2})([0-9]{2})T.*end.*/\1-\2-\3/p") timove_time_start_day=$(timew export | sed --quiet --regexp-extended "s/^\{\"id\":${timove_time_id},\"start\":\"([0-9]{4})([0-9]{2})([0-9]{2})T.*end.*/\1-\2-\3/p")
# Check or ask for new start time {{{ # Check or ask for new start time {{{
if [ -z "${timove_time_new_start}" ]; then if [ -z "${timove_time_new_start}" ]; then
@ -1199,7 +1196,7 @@ function meteo {
if command -v curl > /dev/null; then if command -v curl > /dev/null; then
curl http://fr.wttr.in/${*} curl http://fr.wttr.in/${*}
elif command -v wget > /dev/null; then elif command -v wget > /dev/null; then
wget -qO- http://wttr.in/${*} wget --quiet --output-document=- http://wttr.in/${*}
else else
printf '%b' "Please ${REDB}install one of this tools :${RESET} curl or wget.\n" printf '%b' "Please ${REDB}install one of this tools :${RESET} curl or wget.\n"
fi fi
@ -1228,10 +1225,10 @@ alias -s gif='mirage '
alias -s mp4='smplayer ' alias -s mp4='smplayer '
alias -s avi='smplayer ' alias -s avi='smplayer '
alias -s flv='smplayer ' alias -s flv='smplayer '
alias -s log='tail -f' alias -s log='tail --follow'
alias -s conf='vim ' alias -s conf='vim '
alias -s gz='gunzip ' alias -s gz='gunzip '
alias -s bz2='tar -xjvf' alias -s bz2='bzip2'
####################################### #######################################
@ -1257,7 +1254,7 @@ function bonjour() {
if [ $(command -v bash_quote) ] && [ $(command -v cowsay) ]; then if [ $(command -v bash_quote) ] && [ $(command -v cowsay) ]; then
if [ $MODULO_MIN -eq 0 ]; then if [ $MODULO_MIN -eq 0 ]; then
#echo Bonjour $USER, nous sommes le `date +"%A %e %B %Y"`, et il est : `date +"%H"` h `date +"%M"` | cowsay -f $(/bin/ls /usr/share/cowsay/cows -1 | head -n $(expr $$$(date +%s) % $(ls /usr/share/cowsay/cows | wc -w) + 1) | tail -n 1) #echo Bonjour $USER, nous sommes le `date +"%A %e %B %Y"`, et il est : `date +"%H"` h `date +"%M"` | cowsay -f $(/bin/ls /usr/share/cowsay/cows -1 | head -n $(expr $$$(date +%s) % $(ls /usr/share/cowsay/cows | wc -w) + 1) | tail -n 1)
command bash_quote | cowsay -f $(/bin/ls /usr/share/cowsay/cows -1 | head -n $(expr $$$(date +%s) % $(ls /usr/share/cowsay/cows | wc -w) + 1) | tail -n 1) command bash_quote | cowsay -f $(/bin/ls /usr/share/cowsay/cows -1 | head -n $(expr $$$(date +%s) % $(ls /usr/share/cowsay/cows | wc --words) + 1) | tail --lines=1)
else else
#echo Bonjour $USER, nous sommes le `date +"%A %e %B %Y"`, et il est : `date +"%H"` h `date +"%M"` | ponythink #echo Bonjour $USER, nous sommes le `date +"%A %e %B %Y"`, et il est : `date +"%H"` h `date +"%M"` | ponythink
command bash_quote | ponythink command bash_quote | ponythink
@ -1268,7 +1265,7 @@ function bonjour() {
} }
##Affiche quelques statistiques à propos de l'ordinateur ##Affiche quelques statistiques à propos de l'ordinateur
alias stat_sys="echo ' ' && uname -a && echo ' '&& uptime &&echo ' '&& df && echo ' '" alias stat_sys="echo ' ' && uname --all && echo ' '&& uptime &&echo ' '&& df && echo ' '"
##################################### #####################################
#####FONCTIONS #####FONCTIONS
@ -1285,7 +1282,7 @@ function mkcd() {
#liste les alias et functions #liste les alias et functions
function listalias(){ function listalias(){
cat /etc/zsh/zshrc | egrep "alias|function" | grep -v "^#" | $PAGER cat /etc/zsh/zshrc | egrep "alias|function" | grep --invert-match "^#" -- | $PAGER
} }
# Get real address behind a shorten URL {{{ # Get real address behind a shorten URL {{{
@ -1361,7 +1358,7 @@ function lowercase()
##Capture d'écran ##Capture d'écran
function printscreen() function printscreen()
{ {
scrot -s -e 'gimp $f ; rm -rf $f' scrot --select --exec 'gimp $f ; rm --recursive --force -- $f'
} }
@ -1379,7 +1376,7 @@ function pdflatex()
# On supprime le fichier pdf si il est présent # On supprime le fichier pdf si il est présent
if [ -f "${pdf}" ]; then if [ -f "${pdf}" ]; then
rm -rf "${pdf}" rm --recursive --force -- "${pdf}"
fi fi
# Si le répertoire temporaire n'existe pas, on le crée # Si le répertoire temporaire n'existe pas, on le crée
@ -1392,7 +1389,7 @@ function pdflatex()
/usr/bin/pdflatex -output-directory ${temp_dir} $1 /usr/bin/pdflatex -output-directory ${temp_dir} $1
# On place le fichier pdf qui est dans le répertoire temporaire dans le répertoire courant # On place le fichier pdf qui est dans le répertoire temporaire dans le répertoire courant
mv -f "${temp_dir}"/*.pdf . mv --force -- "${temp_dir}"/*.pdf .
} }
#Éteint un pc sous windows à distance #Éteint un pc sous windows à distance
@ -1415,7 +1412,7 @@ function calc()
# Afficher le code retour de la commande précédente # Afficher le code retour de la commande précédente
function cmd_status { function cmd_status {
local exit_code=$? # exit code of command local exit_code=$? # exit code of command
local count=$(jobs | wc -l) # no. of background jobs local count=$(jobs | wc --lines) # no. of background jobs
# Report no. of background jobs if >0 # Report no. of background jobs if >0
if [ $count -gt 0 ]; then if [ $count -gt 0 ]; then
@ -1603,7 +1600,7 @@ function decrypt()
# Traduire en français avec Gogole: # Traduire en français avec Gogole:
function tradfr() function tradfr()
{ {
wget -U "Mozilla/5.0" -qO - "http://translate.google.com/translate_a/t?client=t&text=${*}&sl=auto&tl=fr" | sed 's/\[\[\[\"//' | cut -d \" -f 1 wget --user-agent="Mozilla/5.0" --quiet --output-document=- "http://translate.google.com/translate_a/t?client=t&text=${*}&sl=auto&tl=fr" | sed 's/\[\[\[\"//' | cut --delimiter=\" --fields=1
} }
# Traduire du français à l'anglais avec Gogole: # Traduire du français à l'anglais avec Gogole:
@ -1979,7 +1976,7 @@ zstyle ':completion:*:*:cd:*' tag-order local-directories path-directories
## Complétion des commandes ssh avec le contenu du fichier ~/.ssh/config et le contenu de host ## Complétion des commandes ssh avec le contenu du fichier ~/.ssh/config et le contenu de host
#local HOSTS #local HOSTS
#[[ -f ~/.ssh/config ]] && HOSTS=(`sed -n \'s/^Host \(.*\)/\1/p\' ~/.ssh/config`) #[[ -f ~/.ssh/config ]] && HOSTS=(`sed --quiet \'s/^Host \(.*\)/\1/p\' ~/.ssh/config`)
#if [ -f ~/.ssh/config ]; then #if [ -f ~/.ssh/config ]; then
#HOSTS=(`grep ^Host ~/.ssh/config | sed s/Host\ // | egrep -v ^\*$`) #HOSTS=(`grep ^Host ~/.ssh/config | sed s/Host\ // | egrep -v ^\*$`)
#fi #fi
@ -2494,7 +2491,7 @@ dexec() {
container_id=$(docker container ls --quiet --filter=name="${container_name}") container_id=$(docker container ls --quiet --filter=name="${container_name}")
printf "%b\n" "Try to enter to Docker container (named : ${container_name})" printf "%b\n" "Try to enter to Docker container (named : ${container_name})"
docker exec -it "${container_id:-/dev/null}" "${1:-bash}" docker exec --interactive --tty -- "${container_id:-/dev/null}" "${1:-bash}"
} }
# }}} # }}}