执行 shell 脚本时出现 typeset: not found 错误。我是否缺少包或什么?

执行 shell 脚本时出现 typeset: not found 错误。我是否缺少包或什么?

以下是错误和相应的脚本行:

spec@Lucifer:~/Documents/seagull.svn.LINUX$ ./build.ksh
./build.ksh: 36: typeset: not found
./build.ksh: 39: typeset: not found
./build.ksh: 44: function: not found
Command line syntax of  - options
-exec <RELEASE|DEBUG>       : mode used for compilation (default RELEASE)
-target <all|clean|force|dist>    : target used for compilation (default all)
-help                       : display the command line syntax
./build.ksh: 52: function: not found
ERROR: 
spec@Lucifer:~/Documents/seagull.svn.LINUX$ 

脚本

# Init of variables
BUILD_TARGET=${BUILD_DEFAULT_TARGET}
BUILD_EXEC=${BUILD_DEFAULT_EXEC}
typeset -u BUILD_OS=`uname -s | tr '-' '_' | tr '.' '_' | tr '/' '_' `
BUILD_CODE_DIRECTORY=code
BUILD_DIRECTORY=`pwd`
typeset -u BUILD_ARCH=`uname -m | tr '-' '_' | tr '.' '_' | tr '/' '_' `
BUILD_VERSION_FILE=build.conf
BUILD_DIST_MODE=0
BUILD_FORCE_MODE=0

答案1

据我所知,您使用的是 ksh (Korn SHell) shell(至少我怀疑是因为文件名为“build.ksh”)。请注意,不同的 shell 有不同的语法,我不确定 ksh 是否知道“typeset”,我不确定这个,因为我没有使用 ksh。但是,如果能知道您使用的是什么类型的 shell 就更好了。请向我们显示以 开头的“build.ksh”的第一行#!

相关内容