ksh 命令调用 Korn shell,这个 shell 是一个交互式的命令解释器和命令编程语言。
shell 可交互式的从终端键盘或从一个文件中执行命令。KornShell(ksh)是一个Unix 脚本语言,由贝尔实验室的David Korn在上世纪80年代初开发,并于1983年7月14日在USENIX发表。基于Bourne shell的源代码发展而来。
KornShell是向后兼容的Bourne Shell,包括C shell的诸多特性,是受贝尔实验室用户的启发而产生的。
Korn shell 是与 Bourne shell (用 bsh 命令调用)向后兼容的,并且包含大部分的 Bourne shell 的特点和几个 C shell 的最好特点。
要得到关于 Korn shell 的更多信息,参考 "Korn Shell" 在 《AIX 5L V52 系统用户指南: *** 作系统与设备》。
#!/bin/ksh
date='20140101'
tablename="smssvclog_${date}_1_s"
sqlplus $ACCOUNT/$PASSWORD@$ORACLE_LOG <<EOF
select count() from ${tablename};
exit;
EOF
第一个问题(ksh: mk: not found)是因为你的PATH没设对。
如果你输入mk这个指令,那麼Unix或Linux就会根据PATH的设定去寻找这个mk的指令,找到后再来执行。你可以做下面的事来解决:
方法1:把现在的directory的位置加到PATH的最前头
PATH=/:$PATH
这个 / 就是目前的directory的所在(如果你的mk就在这里的话)
你可以在$HOME/profile里把PATH重新定义如上,就不用每次都改。
方法2:在执行mk时,用full path name 如下:
$(pwd)/mk
$(pwd)被shell执行时,会被翻译成现在你的directory的full path
或者:
/mk
被shell执行时,会强制在目前的directory下面找这个脚本
问题2:打印一个地址为什么要用%o
你要问自己为什麽要打印一个地址?
地址在电脑中只是一个位子而已,你打印时随便用2进制,8进制,或16进制都可以。只是通常8进制比较容易换算罢了。没有硬性规定要如何列印memory address的。
要运行的是smartersh这个脚本,这个脚本放在/home/smarter111/bin目录下。
但是运行脚本需要ksh这个工具支持,而ksh这个工具呢就放在:/usr/bin目录下。
所以,一句话,就是用ksh来运行smartersh 这个脚本。
以上就是关于ksh是什么意思全部的内容,包括:ksh是什么意思、shell脚本sql语句怎么携带变量、ksh脚本与地址的打印等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)