linux执行sh文件报错,linux下执行sh文件报错:oswatcher_restart.sh: line 13: ./startOSW.sh: Permission denied的解...

在linux下执行sh脚本文件时,出现如下的错误消息:

oswatcher_restart.sh: line 13: ./startOSW.sh: Permission denied

下面分享下我的解决过程,供有遇到类似问题的朋友作个参考。

1,首先,查看执行sh文件的内容

复制代码 代码示例:

[root@jbxue dbscripts]# more oswatcher_restart.sh

#!/usr/bin/ksh

#export oswdir=`df |grep mysqllog|awk {'print $6}'`

export oswdir=/mysqllog

#th=`ps -ef|grep -v $$|grep OSWatcher.sh`

#echo $th;

if [ `ps -ef|grep -v grep|grep OSWatcher.sh|wc -l` = "0" ]

then

cd $oswdir/osw

echo "begin 1"

./startOSW.sh 60 216

else

echo "OSWatcher is running "

fi

exit

2,执行sh命令

复制代码 代码示例:

[mysql@jbxue dbscripts]$ sh oswatcher_restart.sh

begin 1

oswatcher_restart.sh: line 13: ./startOSW.sh: Permission denied

[mysql@jbxue dbscripts]$

[mysql@jbxue dbscripts]$ ll /mysqllog/osw/startOSW.sh

-rw-r--r-- 1 755 mysql 1609 Sep  2 18:13 /mysqllog/osw/startOSW.sh

是755的权限,不知为何无法执行?!

3,通过搜索得知,需要查看前面第一栏的信息,看rwx等信息。

r-- --- --- 文文件属主可读,但不能写或执行

r-- r-- --- 文文件属主和属组用户(一般来说,是文件属主所在的缺省组)可读

r-- r-- r- - 文任何用户都可读,但不能写或执行

rwx r-- r- - 文文件属主可读、写、执行,属组用户和其他用户只可读

rwx r-x --- 文文件属主可读、写、执行,属组用户可读、执

rwx r-x r- x 文文件属主可读、写、执行,属组用户和其他用户可读、执行

rw- rw- --- 文文件属主和属组用户可读、写

rw- rw- r- - 文文件属主和属组用户可读、写,其他用户可读

rw- rw- --- 文文件属主和属组用户及其他用户读可以读、写,慎用这种权限设置,因为任何用户都可以写入该文件

chmod [who] operator [permission] filename

who 中   u  是文件主属权限  g 是属组用户权限   o 其他用户权限  a 是所有用户权限

+  是增加权限      - 是取消权限       =  是设定权限

r  是读权限        w 是写权限         x是执行权限  u,g,o 针对文件属主、属组用户及其他用户的操作。

4,再看我的ll文件结果,没有x标示,那就是没有执行权限.

复制代码 代码示例:

[mysql@jbxue dbscripts]$ ll /mysqllog/osw/startOSW.sh

-rw-r--r-- 1 755 mysql 1609 Sep  2 18:13 /mysqllog/osw/startOSW.sh

5,因此重新赋予755权限

复制代码 代码示例:

[root@jbxue dbscripts]# chmod 755 /mysqllog/osw/startOSW.sh

[root@jbxue dbscripts]# ll /mysqllog/osw/startOSW.sh

-rwxr-xr-x 1 755 mysql 1609 Sep  2 18:13 /mysqllog/osw/startOSW.sh

看到了,有了x标示了,表示可以执行了.

6,再次执行sh,ok了。

复制代码 代码示例:

[root@jbxue dbscripts]# sh oswatcher_restart.sh

begin 1

oswatcher_restart.sh: ./startOSW.sh: /bin/ksh: bad interpreter: No such file or directory

[root@jbxue dbscripts]#

报一个小错,不过这是另外的问题,不妨碍解决本节的问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值