Shell脚本使用常见问题说明

文章目录

  • Shell脚本使用常见问题说明
    • 1.文件属性问题
    • 2.文件可执行问题
    • 3.未知问题

1.文件属性问题

在当前目录下输入命令执行脚本

./xxx.sh

如果脚本执行时报这个错误

/bin/bash^M: bad interpreter: No such file or directory

这是因为用户在 Windows 系统下编写脚本,在传输到 Linux上。此时脚本的属性是 windows 下的 doc 属性,而 Linux 识别的属性是 unix,Linux无法识别此脚本导致这个错误。

解决办法:

1.使用 vim 编辑脚本

sudo vim xxx.sh

2.更改脚本属性为unix

这里注意,不需要做什么其他的操作,直接输入代码就行了

:set ff=unix

回车即修改成功

3.查看脚本属性

:set ff

回车即可查看属性

脚本的属性为unix,就可以被识别


2.文件可执行问题

如果脚本执行时报这个错误

-bash: ./xxx.sh: Permission denied

这是因为此脚本没有可执行的权限,将脚本权限更改为可执行文件即可

sudo chmod +x xxx.sh

使用 ll 命令查看当前目录文件的属性

如果脚本的颜色已经变成了绿色,或者带有一个*号,则脚本具有了可执行的权限。如果脚本的颜色还是白色,那就不可执行。

在当前目录下运行即可

./xxx.sh

3.未知问题

编写好脚本后,从本地虚拟机上拷贝脚本到另一台虚拟机中时,在少部分虚拟机上遇到了脚本无法执行的问题,依照前两个步骤更改了文件属性和可执行权限,仍然无法解决。

具体原因暂时没有弄明白,但是找到一个解决的方法:

  1. 在 ubuntu 系统中新建一个后缀为 .sh 的文件,例如 hello.sh
  2. 将脚本xxx.sh中的代码全部拷贝到hello.sh中,注意这里我们需要用vim或者gredit打开脚本文件然后复制代码
  3. 重新运行hello.sh脚本即可

这个问题仅在少部分虚拟机上遇到,绝大多数虚拟机使用脚本都是正常的,不会遇到这个问题

Shell脚本使用常见问题说明相关推荐

  1. PHP 执行shell 脚本,常见问题

    php调用shell脚本 1)exec() 原型: string exec ( string $command [, array &$output [, int &$return_va ...

  2. Shell脚本常见问题

    1.定义变量时, =号的两边不可以留空格. eg: gender=femal----right gender =femal---–wrong gender= femal---–wrong 2.条件测试 ...

  3. 如何写shell脚本?尝试自己编写一个简单脚本。

    1 背景介绍 每次发布tomcat项目的时候都要反复敲一些命令,重启tomcat之前先检查tomcat进程有没有停掉,没有还要手动kill该进程,单独部署一个项目还好,如果一次多个部署,就比较费劲了 ...

  4. shell脚本基础知识(入门)

    简介 本文会全面介绍shell脚本的基础知识. 脚本格式 要把shell命令放到一个"脚本"当中,有一个要求:脚本的第一行必须写成类似这样的格式: #!/bin/bash bash ...

  5. shell上传文件到服务器,shell脚本上传文件到ftp服务器

    shell脚本上传文件到ftp服务器 内容精选 换一换 安装传输工具在本地主机和Windows云服务器上分别安装数据传输工具,将文件上传到云服务器.例如QQ.exe.在本地主机和Windows云服务器 ...

  6. jar包部署shell脚本编写,在服务器上部署jar包,在Linux服务器上部署服务,设置编码格式,设置内存管理

    准备步骤: 1.安装java环境,知道java安装目录 2.将jar包拖放或发送至服务器中(目录自定义) 一.编写shell脚本,将以下代码放在shell脚本中,将shell脚本放在jar包同级目录下 ...

  7. 快速给shell脚本加上使用提示

    我们只需通过在shell脚本前面加上如下的代码即可: #!/bin/bash ### ### my-script - does one thing well ### ### Usage: ### my ...

  8. Ubuntu系统执行shell 脚本的方法

    使用前了解 Shell: Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁 Shell: Shell 脚本(shell script),是一种为 shell 编写的脚本程序. 下面 ...

  9. Windows 系统执行Shell 脚本的方法

    使用前了解 Shell: Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁 Shell: Shell 脚本(shell script),是一种为 shell 编写的脚本程序. 下面 ...

最新文章

  1. 奇葩错误:cv.imread()读取失败
  2. 输入一行字符,判断单词数
  3. python列表的切片操作
  4. 一年有几个月几个季度_胎教几个月开始 注意事项有哪些?
  5. ASP.NET技术的学习顺序
  6. ActivityGroup中的子Activity创建Dialog:android.view.WindowManager$BadTokenException: U
  7. 五、创建Bean的三种方式
  8. 【Coursera】Getting Started with Python:Week One - Reading: Welcome to The Class
  9. OK6410开发板学习之外部中断(按键点亮led和蜂鸣器)
  10. 算法竞赛入门经典 排列
  11. php时间变时间戳,php 时间如何转换为时间戳
  12. kotlin入门教程
  13. 【Git】clone项目push项目没反应,Cloning into...没下载
  14. android 新浪微博分享链接地址,Android 集成新浪微博分享及授权 (上)
  15. [KALI系列第四章]进行ARP断网攻击,包含安装方法
  16. 智能红外遥控器(四):手机蓝牙控制格力风扇康佳加湿器
  17. android studio 登陆ui界面设计
  18. 【Python 实战基础】Flask 蓝图 Blueprint 怎么用以及怎么集成 Bootstrap
  19. 三万文字透视前瞻:区块链及隐私计算在传统企业中的技术认知与进阶思考
  20. 帝国cms灵动标签调用当前栏目下所有子栏目链接,子栏目名称,子栏目图片

热门文章

  1. Tensorflow LSTM时间序列预测的尝试
  2. Go实战--也许最快的Go语言Web框架kataras/iris初识三(Redis、leveldb、BoltDB)
  3. go标准命令详解0.1 go build
  4. IO多路复用:select/poll/epoll
  5. java.lang.RuntimeException: Invalid action class configuration that references an unknown class name
  6. javafx 安装_JDK安装教程及环境配置
  7. 新基建之数据中心2020
  8. 某银行省级数据中心IT运维服务体系建设完整思路
  9. 运维人最爱的八本书,送给十一不出门的你
  10. 成功解决ValueError: fill value must be in categories