Linux

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > Linux > Linux下sh文件执行权限不够

Linux下sh文件执行权限不够的解决过程

作者:是老码识途呀

在Linux部署服务时,脚本无法执行?别慌!本文教你用chmod命令快速为.sh文件授权,解决常见执行权限问题,同时分享脚本异常处理方法,如/bin/sh^M错误,立即点击,掌握实用技巧,提升运维效率

今天在部署公司大数据上层服务的时候,发现自己的微服务脚本是白色的,汗,没法执行。原来是没有 .sh 的执行权限,用 chmod 授权下就可以了。

chmod是 Linux 中权限管理命令change the permissions mode of a file的缩写。

一、为所有 .sh 脚本添加执行权限

chmod u+x *.sh,表示对当前目录下的file.sh文件的所有者增加可执行权限。

  1. u 代表所有者;
  2. x 代表执行权限;
  3. + 表示增加权限;
  4. *.sh 表示当前目录下所有 .sh 文件。

二、为指定 .sh 脚本添加执行权限

chmod u+x file1.sh,表示对当前目录下的 file1.sh 文件的所有者增加可执行权限。

  1. u 代表所有者;
  2. x 代表执行权限;
  3. + 表示增加权限;
  4. file1 表示指定的脚本文件。

用以上两种方法授权后,在查看执行就可以啦。

三、脚本执行异常

异常信息:/bin/sh^M: bad interpreter: No such file or directory

异常原因:是我们在 windows 下编写的脚本文件,直接放到 Linux 默认的是 dos 模式的文本,不被识别,需要处理下。

解决办法:

1、用 vim 打开脚本文件,在命令模式下输入:set ff=unix, 保存就可以了。

2、在 windows下转换脚本格式,用 Notepad 改变文件格式即可。File-->Conversions-->DOS->UNIX。

3、在 Linux 下新建一个 .sh 文件,然后复制粘贴过去也是可以的。

四、总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文