Polissage.
[lhc/ateliers.git] / lib / mk.sh
1 #!/bin/sh
2
3 mk_dir () {
4 local mk="dir"
5 info "$*" mk
6 local mod=${1#mod=}; shift
7 local own=${1#own=}; shift
8 sudo mkdir -p "$@"
9 ! [ ${mod:+set} ] || sudo chmod $mod "$@"
10 ! [ ${own:+set} ] || sudo chown $own "$@"
11 }
12 mk_reg () {
13 local mk="reg"
14 info "$*" mk
15 local mod=${1#mod=}; shift
16 local own=${1#own=}; shift
17 local append
18 if [ "x${1#--append}" = "x" ]
19 then append='-a'; shift
20 else append=''
21 fi
22 sudo tee ${TRACE:+/dev/stderr} >/dev/null $append "$@"
23 ! [ ${mod:+set} ] || sudo chmod $mod "$@"
24 ! [ ${own:+set} ] || sudo chown $own "$@"
25 }
26 mk_lnk () {
27 local mk="lnk"
28 info "$*" mk
29 sudo ln -fns "$@"
30 }