ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 执行shell脚本遇到 ksh not found的问题

执行shell脚本遇到 ksh not found的问题

原创 Linux操作系统 作者:mumumufang 时间:2011-02-22 11:03:46 0 删除 编辑

今天执行脚本aix_xunjian.sh的时候遇到问题

[dacp1][/export/home]#ls -l

total 72

-rwxr-xr-x    1 root     sys            2372 Feb 22 09:17 aix_xunjian.sh

drwxr-sr-x    5 dacp     cin            1024 Jan 17 16:57 dacp

drwxr-sr-x    2 dacpdb   cin             512 Dec 20 2007  dacpdb

drwxr-sr-x    8 dacpoam  cin             512 Feb 22 09:00 dacpoam

drwxrwx--x    2 root     system          512 Nov 20 2007  lost+found

drwxr-sr-x    2 pdscp    staff           512 Dec 11 15:22 pdscp

-rwxr-xr-x    1 dacp     cin             195 Dec 19 2007  smit.log

drwxr-sr-x    3 tabmnt1  informix        512 Nov 04 14:46 tabmnt1

drwxr-sr-x    3 tabmnt2  informix        512 Jul 28 2010  tabmnt2

[dacp1][/export/home]#oslevel -r

5300-08

[dacp1][/export/home]#./aix_xunjian.sh

ksh: ./aix_xunjian.sh:  not found.

网上查了资料,说是环境变量的原因。

dacp1][/]#env
_=/usr/bin/env
LANG=en_US
LOGIN=root
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:/usr/java14/jre/bin:/usr/java14/bin
LC__FASTMSG=true
LOGNAME=root
MAIL=/usr/spool/mail/root
LOCPATH=/usr/shdb/nls/loc
USER=root
AUTHSTATE=compat
SHELL=/usr/bin/ksh
DMDIR=/etc/objrepos
HOME=/
TERM=vt100
MAILMSG=[YOU HAVE NEW MAIL]
PWD=/
TZ=BEIST-8
A__z=! LOGNAME
NLSPATH=/usr/shdb/nls/msg/%L/%N:/usr/shdb/nls/msg/%L/%N.cat

 

发现SHELL对应的变量为/usr/bin/ksh,而我写的脚本却是# /bin/ksh

至此找的了问题所在!

我在系统用vi #!/bin/ksh更改为#!/usr/bin/ksh

重新执行#./aix_xunjian.sh发现问题还是发生,not found.

我在本地把脚本更改过之后,重新上传到服务器上执行,问题解决。

 

 

疑问:为什么用VI更改过后没用作用呢?



附:#! /bin/ksh


logname=/home/guo/aix_`hostname`_`date +"%y%m%d%H%M"`.txt


echo "1.Filesystem(文件系统磁盘空间占用情况,<80%):" >>$logname

echo "#df -k" >>$logname

df -k >>$logname 2>&1 

echo " "


echo "2.VG(卷组 活动卷组 逻辑卷-无stale状态):" >>$logname

echo "#lsvg" >>$logname

lsvg  >>$logname

echo "#lsvg -o" >>$logname

lsvg -o >>$logname

ACVG=`lsvg -o|xargs`

for i in $ACVG

do

echo "#lsvg -l $i" >>$logname

lsvg -l $i >>$logname

done

echo " "


echo "3.Errpt(AIX错误报告):" >>$logname

echo "#errpt" >>$logname

errpt >>$logname 2>&1 

echo " "

echo "Errpt(硬件故障):" >>$logname

echo "#errpt -dH" >>$logname

errpt -dH >>$logname 2>&1 

echo " "

echo "Errpt(软件故障):" >>$logname

echo "#errpt -dS" >>$logname

errpt -dH >>$logname 2>&1 

echo " "

echo "Errpt(指示性信息):" >>$logname

echo "#errpt -dO" >>$logname

errpt -dO >>$logname 2>&1 

echo " "


echo "4.CPU,内存,IO:" >>$logname

echo "#vmstat 2 5" >>$logname

vmstat 2 5 >>$logname 2>&1 

echo "内存交换空间使用" >>$logname

echo "#lsps -s" >>$logname

lsps -s >>$logname 2>&1 

echo "#lsps -a" >>$logname

lsps -a >>$logname 2>&1 

echo "#iostat 1 2" >>$logname

iostat 1 2 >>$logname 2>&1 

echo " "


echo "5.内存使用情况:" >>$logname

echo "内存使用情况检查" >>$logname

echo "#svmon" >>$logname

svmon >>$logname

echo " "


echo "6.NETWORK:" >>$logname

echo "网卡状态" >>$logname

echo "#netstat -in " >>$logname

netstat -in >>$logname

echo "路由信息" >>$logname

echo "#netstat -rn " >>$logname

netstat -rn >>$logname

echo " "


#echo "7.CORE:" >>$logname

#echo "#find / -name core" >>$logname

#find / -name core >>$logname

#echo " "



echo "8.HACMP CHECK:" >>$logname

echo "HACMP检查" >>$logname

echo "#lssrc -g cluster|sed '1d' " >>$logname

lssrc -g cluster|sed '1d' >>$logname

echo " "


echo "9.DISK检查:" >>$logname

echo "DISK检查" >>$logname

echo "#lsdev -Cc disk " >>$logname

lsdev -Cc disk >>$logname

echo " "


echo "10.MEMORY检查:" >>$logname

echo "MEMORY检查" >>$logname

echo "#lsdev -Cc memory" >>$logname

lsdev -Cc memory >>$logname

echo " "


echo "11.CPU检查:" >>$logname

echo "CPU检查" >>$logname

echo "#lsdev -Cc processor" >>$logname

lsdev -Cc processor >>$logname

echo " "


# now ftp to the log server

#ftp -i -n <

#open 10.0.99.5

#user root vmware

#lcd /home/check

#put $logname

#bye

#EOF


#cd /home/check

#mv $logname /home/check/syslog/




来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22821701/viewspace-687672/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-11-04

  • 博文量
    38
  • 访问量
    114357