diff options
author | Laurent Bercot <ska-skaware@skarnet.org> | 2024-10-09 14:28:44 +0000 |
---|---|---|
committer | Laurent Bercot <ska@appnovation.com> | 2024-10-09 14:28:44 +0000 |
commit | 8f74a42d6058007c7b7c45b65f49342d5c791657 (patch) | |
tree | c832404f7ec5885ebcb57f5d41369f57796e7877 | |
parent | 8de20625f671a4c45abfc46821651476cf6d5fe6 (diff) | |
download | s6-linux-utils-8f74a42d6058007c7b7c45b65f49342d5c791657.tar.gz s6-linux-utils-8f74a42d6058007c7b7c45b65f49342d5c791657.tar.xz s6-linux-utils-8f74a42d6058007c7b7c45b65f49342d5c791657.zip |
Signed-off-by: Laurent Bercot <ska@appnovation.com>
-rwxr-xr-x | tools/install.sh | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/tools/install.sh b/tools/install.sh index 89f9428..e96dd7b 100755 --- a/tools/install.sh +++ b/tools/install.sh @@ -1,19 +1,21 @@ #!/bin/sh usage() { - echo "usage: $0 [-D] [-l] [-m mode] src dst" 1>&2 + echo "usage: $0 [ -D ] [ -l ] [ -m mode ] [ -O owner:group ] src dst" 1>&2 exit 1 } mkdirp=false symlink=false mode=0755 +og= -while getopts Dlm: name ; do +while getopts Dlm:O: name ; do case "$name" in D) mkdirp=true ;; l) symlink=true ;; m) mode=$OPTARG ;; + O) og=$OPTARG ;; ?) usage ;; esac done @@ -46,7 +48,10 @@ if $symlink ; then ln -s "$src" "$tmp" else cat < "$1" > "$tmp" - chmod "$mode" "$tmp" + if test -n "$og" ; then + chown -- "$og" "$tmp" + fi + chmod -- "$mode" "$tmp" fi mv -f "$tmp" "$dst" |