date +%Y-%m-%d_%H-%M-%S
shellcheck a maintenant une option pour auto fix
shellcheck restore.sh -f diff | git apply
Use role in script
#!/bin/bash
servers="server1;server2;server3"
IFS=';' read -r -a array <<< "$servers"
rand=$[ $RANDOM % ${#array[@]} ]
echo ${array[$rand]}
Je me mets ça de côté pour gagner du temps la prochaine fois
logfile=/tmp/logfile.log
errorfile=/tmp/error.log
function log() {
echo -e "\e[34m\e[1m[$(date +%Y-%m-%d) $(date +%H:%M:%S)] $1\e[0m" | tee -a /tmp/logfile.log
}
function logerror() {
echo -e "\e[91m\e[1m[$(date +%Y-%m-%d) $(date +%H:%M:%S)] $1\e[0m" | tee -a /tmp/logfile.log
}
log "prout"
logerror "pwet"
Ptetre qu'un jour je passerai à zsh (ohmyzsh)
En attendant je bricole
Un petit script pour check si les modules ont de nouvelles version dispo (il faut jq)
#!/bin/bash
modules=$(puppet module list|grep '\(v[0-9]\.[0-9]\.[0-9]\)')
IFS=$'\n'
for line in $modules; do
name=$(echo $line|cut -d' ' -f2)
version=$(echo $line|grep -o '\(v[0-9]\.[0-9]\.[0-9]\)'|sed 's/v//')
current_version=$(curl -s https://forgeapi.puppetlabs.com/v3/modules/${name}|jq '.current_release.version'|sed 's/"//g')
if [[ $version == $current_version ]]; then
echo "OK $name $version $current_version"
else
echo "OUTDATED $name $version $current_version"
fi
done
Je ne sais plus ou j'ai vu ça, je ne retrouve plus le lien donc je me le remets ici au cas où
#Marks
export MARKPATH=$HOME/.marks
function jump {
cd -P "$MARKPATH/$1" 2>/dev/null || echo "No such mark: $1"
}
function mark {
mkdir -p "$MARKPATH"; ln -s "$(pwd)" "$MARKPATH/$1"
}
function unmark {
rm -i "$MARKPATH/$1"
}
function marks {
ls -l "$MARKPATH" | sed 's/ / /g' | cut -d' ' -f9- | sed 's/ -/\t-/g' && echo
}