30 lines
671 B
Bash
30 lines
671 B
Bash
|
|
# Check to see if a command exists
|
|
function command_exists {
|
|
command -v "$1" &> /dev/null
|
|
}
|
|
|
|
# log to a central logfile (specified by its caller globally)
|
|
function do_log {
|
|
printf "[%s] %s: %s" "$(`basename $BASH_SOURCE`)" "`date`" "$1" >> $logfile
|
|
}
|
|
|
|
# Check if a symlink exists before trying to create it
|
|
function do_link {
|
|
if [ -e "$2" ]; then
|
|
rm -rf "$2"
|
|
fi
|
|
if [ ! -e "$2" ]; then
|
|
ln -sf "$1" "$2"
|
|
fi
|
|
}
|
|
|
|
# Ask for admin password up front and keep sudo alive until the end of the script
|
|
function keep_alive {
|
|
sudo -v
|
|
while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null &
|
|
}
|
|
|
|
|
|
# vim:set ft=zsh:
|