Linux 我写了一个简单的脚本aaa.sh,内容没有问题,权限也都有,我用./aaa.sh执行提示我“不允许的操作”

但是我用bash aa.sh或者sh aa.sh或者. ./aa.sh 执行的时候就可以成功,唯独用任何用户执行./aa.sh就不行 求解释这是什么原因

你的脚本写的格式有问题的。建议这样:
#! /bin/sh
echo "------"
exit

这样写出来的脚本是不会遇到你上面的问题了。第一行的“#! /bin/sh”不要少。有了这行定义,系统就知道你写的是一个shell脚本,另外你的脚本缺少可执行权限,需要使用chmod +x aaa.sh命令将可执行权限添加上去,这样,就可以使用./aaa.sh来执行这个脚本了。追问

我这个脚本是肯定没有问题的,这只是我举了个例子,我现在主要的问题是,任何脚本只要是用./*sh去执行,都提示的是不允许操作

追答

你的脚本缺少可执行权限,需要使用chmod +x aaa.sh命令将可执行权限添加上去,这样,就可以使用./aaa.sh来执行这个脚本了。

追问

权限肯定是没有问题的,权限是755

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-09-30
1、检查有没有执行权限(x是执行权限)
ls -l *sh
2、增加执行权限
chmod a+x *.sh
或者
chmod 755 *.sh
3、sh aaa.sh可以执行是因为你指定了shell追问

权限什么的都没有问题,我就想知道如何去解决这个问题

追答

1、第一行指定shell
#!/bin/sh
2、需要file是可执行文件,

本回答被网友采纳
第2个回答  2013-08-13
你将你的文件加一个可执行的权限就行了。
chmod +x aaa.sh
然后试试?
. ./aaa.sh 第一个.的意思是源的意思。
bash及sh代表用shell去运行,算是指定的。追问

权限肯定是有的,你说的这些我都知道,我只想知道为什么我用./aaa.sh没法执行,怎么去解决

追答

该分区(文件系统)有没有设置了禁止运行程序的限制,信息量很少。你像他们那样写一个正规的简单的sh,再试试看看,没遇到过此类问题,另外如果./不行的话可能很多rpm包的脚本命令也弄不上去啊,哦对了,测试的话到其他分区试试看,可加
su -c a.sh root
或者
su -c ./a.sh

第3个回答  2013-08-13
在文件第一行加上#!/bin/bash或者#!/bin/sh 指定脚本用什么解释
第4个回答  2013-08-13
你文件头部加:#!/bin/sh

Linux 我写了一个简单的脚本aaa.sh,内容没有问题,权限也都有,我用...
这样写出来的脚本是不会遇到你上面的问题了。第一行的“#! \/bin\/sh”不要少。有了这行定义,系统就知道你写的是一个shell脚本,另外你的脚本缺少可执行权限,需要使用chmod +x aaa.sh命令将可执行权限添加上去,这样,就可以使用.\/aaa.sh来执行这个脚本了。

linux已经编译好的shell脚本程序需要有什么权限才能使用\/xxx.sh来执行...
运行的权限,使用chmod +x xxx.sh

Linux系统中aaa-vasp.sh是什么意思
根据后缀名 .sh 可知,这是一个shell脚本文件,可以在终端执行这个脚本, 而 aaa-vasp 则是这个脚本文件的名称,具体这个脚本有什么功能,需要看里面的代码内容才能知道。楼主如果想学习更多Linux系统知识,可以百度《Linux就该这么学》,不错的一本Linux入门教程。

linux上如何实现运行一个脚本 使用bash或者sh可以正常运行 但是如果...
就是去掉可执行属性就好,只能bash a.sh,不能.\/a.sh 抱歉手机屏小,没看到前面有人答了。。。

Linux 脚本 sh 和 .\/ 的区别
区别只有一点:sh表示脚本默认使用sh脚本解释器。未指定脚本解释器默认为 .\/。具体解释:使用“.\/”执行脚本,对应的xxx.sh脚本必须要有执行权限。使用“sh” 执行脚本,对应的xxx.sh没有执行权限,亦可执行。当脚本开头使用#!设置使用的shell类型时,使用“.\/”执行脚本时,则使用“#!”标志的shell...

linux中我在一个目录下执行该目录下的一个脚本,比如说 执行一个叫ss...
1、export PATH=$PATH:.ss.sh 2、bash ss.sh 3、. ss.sh 4、${PWD}\/ss.sh 5、exec ss.sh 6、把ss.sh放到PATH包含的路径里,比如\/bin等

我在linux下为何不能给别的用户执行定时任务?
比较大的可能是因为环境变量的关系,因为root用户下未设置oracle用户的环境变量,所以无法执行。因为没看到脚本,所以无法完全判断。最好是把脚本发上来看看。

linux怎么添加一个开机无限循环的sh脚本?
这是非常简单实现的事情,把你的脚本写成一个shell文件,例如:auto.sh,在目录\/root\/下.在rc.local这样写 \/root\/auto.sh & 必须加后面的 & ,意思是后台执行,继续执行后面的语句...

我在Linux的主文件夹下写了一个shell script,为什么运行的时候提示:"N...
可能是权限问题,你(ll)查看一下此文件,一般都是-rw-r--r-- 把它改为-rwxr--r--(方法:chmod 744 文件名)不知道你用的是哪个版本的linux,因为多数版本的默认权限是0022,你可以用umask查看一下,所以新建的文件权限都是644,目录是755,所以当你的文件要变成可执行时,就要把那个X补上去了...

linux (OpenSuse) 下的*.SH全都以记事本打开了!!
呵呵,想执行要保证1:他可执行。也就是有x权限,用ls -l可以查看,没有使用chmod命令或者图形界面下右键->属性中更改权限,否则他会以查看的方式打开 2:执行的时候路径正确 所以一般这种文件一旦发生不可打开,到终端此文件目录下,运行sh .\/文件名来运行,还是要注意权限 ...

相似回答