Polish 'new' command
This commit is contained in:
parent
ae88896748
commit
29ebc7bd0a
2 changed files with 45 additions and 1 deletions
|
@ -15,7 +15,7 @@ libexec="${localbase}"/libexec/webskel
|
|||
# main
|
||||
case $1 in
|
||||
"new")
|
||||
"${libexec}"/commands/new
|
||||
"${libexec}"/commands/new "${2}" "${3}"
|
||||
;;
|
||||
"ls")
|
||||
"${libexec}"/commands/ls
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
##
|
||||
# variables
|
||||
localbase=${LOCALBASE:-$(realpath "$(dirname "$0")"/../../..)}
|
||||
sharebase="${localbase}"/share/webskel
|
||||
libexec="${localbase}"/libexec/webskel
|
||||
appname="${1}"
|
||||
skel="${2}"
|
||||
|
||||
##
|
||||
# functions
|
||||
. "${libexec}"/functions/print.sh
|
||||
|
||||
##
|
||||
# main
|
||||
if [ -z "${appname}" ]; then
|
||||
printerr "provide an application name"
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "${skel}" ]; then
|
||||
printerr "provide a skeleton name"
|
||||
exit 1
|
||||
fi
|
||||
if [ -e "${sharebase}"/"${skel}".skeleton ]; then
|
||||
target="${sharebase}"/"${skel}".skeleton
|
||||
cwd=$(pwd)
|
||||
cd ${target}
|
||||
find . \
|
||||
-type d \
|
||||
-exec install -d -m u=rwx,g=rx,o= "${cwd}"/"${appname}"/"{}" \; \
|
||||
-exec echo -n . \;
|
||||
echo
|
||||
find . \
|
||||
-type f \
|
||||
-exec install -m u=rwx,g=rx,o= {} "${cwd}"/"${appname}"/"{}" \; \
|
||||
-exec echo -n . \;
|
||||
echo
|
||||
printok "initialized ${app}"
|
||||
else
|
||||
printerr "skeleton ${skel} was not found"
|
||||
exit 1
|
||||
fi
|
Loading…
Reference in a new issue