SHELL 常用函数
本文目标是仅使用内置功能记录一些常用的完成各种任务的方法。
前言
外部流程和程序的替代方案集合。脚本语言比人们意识到的更强大,大多数任务都可以在不依赖外部程序的情况下完成。调用外部程序是昂贵的,过度使用将会导致程序运行明显的缓慢。使用内置方法编写的脚本将更快,需要更少的依赖,并更好地理解语言本身。
本文内容为解决在编写程序和脚本时遇到的问题提供了参考。示例以功能、用法的方式将这些解决方案集成到代码中。
shell
shell
shell
其他
安装家目录
功能:
PRG="$0"
# Need this for relative symlinks.
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`"/$link"
fi
done
# 执行程序的目录
SAVED="`pwd`"
cd "`dirname \"$PRG\"`/" >/dev/null
# 安装应用的目录
APP_HOME="`pwd -P`"
# 必须执行 `cd $SAVED`,否则会到APP_HOME,不在执行程序的目录
cd "$SAVED" >/dev/null