windows下写的shell脚本在linux执行出错的解决办法
来源:互联网 发布:什么看书软件免费 编辑:程序博客网 时间:2024/05/19 21:16
这篇文章主要介绍了windows下写的shell脚本在linux执行出错的解决办法,需要的朋友可以参考下
在Windows下写了一个shell脚本,上传到Linux下执行时报错:
[root@localhost test]# ./test.sh
-bash: ./test.sh: /bin/sh^M: bad interpreter: No such file or directory
-bash: ./test.sh: /bin/sh^M: bad interpreter: No such file or directory
test.sh源码:
复制代码 代码如下:
#!/bin/sh
echo "test shell "
echo "test shell "
由于自己对shell不太熟悉,找同事沟通了后了解了原委,主要原因是test.sh是我在windows下编辑然后上传到linux系统里执行的。.sh文件的格式为dos格式。而linux只能执行格式为unix格式的脚本。因为在dos/window下按一次回车键实际上输入的是“回车(CR)”和“换行(LF)”,而Linux/unix下按一次回车键只输入“换行(LF)”,所以修改的sh文件在每行都会多了一个CR,所以Linux下运行时就会报错找不到命令。
我们可以通过vi编辑器来查看文件的format格式。步骤如下:
1.首先用vi命令打开文件
[root@localhost test]# vi test.sh
2.在vi命令模式中使用 :set ff 命令
可以看到改文件的格式为
fileformat=dos
3.修改文件format为unix
使用vi/vim修改文件format
命令::set ff=unix
或者::set fileformat=unix
然后:wq保存退出就可以了
在编写shell脚本时出现‘\r’问题时,最好在linux计算机上编写shell脚本,这样shell脚本的格式就是unix的,这样可以避免不必要的麻烦。
阅读全文
0 0
- windows下写的shell脚本在linux执行出错的解决办法
- windows下写的shell脚本在linux执行出错的解决办法
- windows 下生成的shell脚本在linux下执行
- Windows下写shell脚本到Linux下执行遇到的问题及解决方案
- 在Windows下写了一个shell脚本,上传到Linux下执行时报错
- 在Windows下写了一个shell脚本,上传到Linux下执行时报错:
- windows下编写的shell脚本如何在Linux运行
- 解决在windows环境中编写shell脚本,在Linux运行出错的问题
- windows下写shell的一个容易出错的地方
- windows下写shell的一个容易出错的地方
- windows下写的shell脚本,到linux下无法使用的问题
- 一个shell脚本执行出错的问题
- 在linux中如何执行自己亲手写的shell脚本?
- Linux下shell脚本手动执行和放在crontab中自动执行的结果不一样
- Linux终端执行shell脚本,提示权限不够的解决办法
- windows下的换行符在shell下出错
- linux执行shell脚本的
- Notepad++编写的shell脚本在linux下无法执行的解决方法
- HTML弹窗加蒙层
- hibernate和jpa注意
- RecyclerView的使用和优化
- Monitor.TryEnter方法和lock语句的使用注意
- [RK3288][Android6.0] WiFi之同步网络时间过程
- windows下写的shell脚本在linux执行出错的解决办法
- Selenium2+python自动化-元素定位参数化(find_element)
- linux模块驱动简单的Makefile
- 获取当前控制器
- 接口模拟框架 MockApi
- Debian下安装Go开发环境
- 一秒钟教你理解什么是异步什么是同步!
- Tensorflow 官方文档 Feed章节有误
- MongoDB的查询语法和SQL的SELECT语法对照