You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
703 B

#!/usr/bin/env bash
set -eu
synopsis() {
cat << EOF
Usage : `basename $0` var value
EOF
}
help() {
cat << EOF
`basename $0` fixe la variable dans ~/.vdnrc.
`synopsis`
-h : affiche cette aide
EOF
}
usage() {
synopsis
exit 1
}
args() {
local opt
while getopts "hr" opt; do
case $opt in
h) help; exit 0;;
?) usage;;
esac
done
shift $(($OPTIND - 1))
[ $# != 2 ] && usage
VAR=$1
VALUE=$2
}
# Programme principal
VDN_PATH=$(readlink -f $(dirname $0)/..); . $VDN_PATH/bin/functions.sh
args "$@"
f=$HOME/.vdnrc
[ ! -e $f ] && touch $f
if cat $f | grep -q "^$VAR="; then
sed -i -re "s,$VAR=.*$,$VAR=\"$VALUE\"," $f || echo "Error"
else
echo "$VAR=\"$VALUE\"" >> $f
fi