|
# --- SDE-COPYRIGHT-NOTE-BEGIN ---
|
|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
|
|
#
|
|
# Filename: lib/sde-wrapper.in
|
|
# Copyright (C) 2006 - 2008 The OpenSDE Project
|
|
#
|
|
# More information can be found in the files COPYING and README.
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; version 2 of the License. A copy of the
|
|
# GNU General Public License can be found in the file COPYING.
|
|
# --- SDE-COPYRIGHT-NOTE-END ---
|
|
|
|
# list all the valid command wrappers
|
|
#
|
|
sde_wrapper_command_list() {
|
|
ls -1d "$SDEROOT/bin/sde-"* | grep -v 'bin/sde-.*-.*'
|
|
}
|
|
|
|
# returns the name of a command file
|
|
sde_wrapper_command_name() {
|
|
echo "$1" | sed -e 's,.*/sde-,,'
|
|
}
|
|
|
|
# returns the description of a command file
|
|
sde_wrapper_command_desc() {
|
|
sed -n -e 's,^#Description: \(.*\)$,\1,p' "$1" | head -n 1
|
|
}
|
|
|
|
# returns an space delimited list of aliases of this command file
|
|
sde_wrapper_command_aliases() {
|
|
sed -n -e 's,^#Alias: \([^ ]*\)$,\1,p' "$command" | tr '\n' ' ' |
|
|
sed -e 's/^ *//' -e 's/ *$//'
|
|
}
|
|
|
|
sde_wrapper_command() {
|
|
local cmdbin=
|
|
if [ "$1" != "${1%-*}" ]; then
|
|
# trying to cheat, no dashes alowed
|
|
return
|
|
elif [ -x "$SDEROOT/bin/sde-$1" ]; then
|
|
# command given explicitly
|
|
echo "$1"
|
|
else
|
|
# given token may be an alias of a valid command
|
|
cmdbin=$( grep -l "^#Alias: $1$" `sde_wrapper_command_list` | head -n 1 )
|
|
echo "$cmdbin" | sed -e 's,.*/sde-,,'
|
|
fi
|
|
}
|