windows下编写的Shell脚本在Linux下运行错误的解决方法

2024-05-05 08:38

本文主要是介绍windows下编写的Shell脚本在Linux下运行错误的解决方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

当在Linux下写好一个脚本之后保存在windows上,在Windows上修改以后再传到Linux上,可能脚本就不能执行了。

出现这种错误的原因是因为:CR/LF问题,在dos/window下按一次回车键实际上输入的是“回车(CR)”和“换行(LF)”,而Linux/unix下按一次回车键只输入“换行(LF)”,所以修改的sh文件在每行都会多了一个CR,所以Linux下运行时就会报错找不到命令。

举出两种解决方法:

1、在editplus中“文档->文件格式(CR/LF)->UNIX”,这样Linux下就能按unix的格式保存文件

2、在vim中,输入:set ff=unix,同样也是转换成unix的格式。

这篇关于windows下编写的Shell脚本在Linux下运行错误的解决方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/961268

相关文章

初学JBPM。发现的错误JBPM no jBPM DB schema

在JBPM 的src目录下面有jbpm.cfg.xmljbpm.hibernate.cfg.xmljbpm.mail.propertieslogging.properties以上是4个默认配置文件。在jbpm.hibernate.cfg.xml <?xml version="1.0" encoding="utf-8"?><!DOCTYPE hibernate-configu

【百度AI人脸核身+公安验证】Android示例工程运行

· 注意1:前提自己已经安装了Android Studio开发工具 · 注意2:此SDK必须企业认证才可以下载。且有相关验证。因此请先确认是否企业认证 · 注意3:此SDK需要2个Licenses 一个是OCR模块绑定包名的。另一个是人脸模块客户端SDK的里Licenses · 注意4:在人脸模块客户端创建应用之前。记得已经获取到了安卓keystore 中MD5值 · 注意5:在人脸模块创建

【百度AI人脸核身+公安验证】IOS示例工程运行

注意:前提百度账号满足企业认证     注意:公安验证接口非免费。需要单独提交工单申请哦     注意:人脸识别应用勾选文字识别的身份证识别     注意:人脸模块客户端创建了应用。并设置了授权标识、包名相关信息 以上注意都满足。请看重要!!!SDK的license 下载IOS保存本地 下载自动配置授权信息的示例工程 并解压 双击运行FacePrint.

Mybatis错误——无效绑定问题:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):

在spring + mybatis 整合时候会遇到 上面题目的问题: 如: 1:: http://bbs.csdn.net/topics/390501284 这个 博主遇到的问题 这个解决的问题的方法是: @Repository(value="userMapper") public interface UserMapper {     public List<User> getAll(

Spring AOP 实现监控方法执行的时间(统计service中方法执行的时间)

项目中有时候会遇到统计方法执行的时间,来对项目进行优化!下面是我自己在工作中遇到的问题,和我自己的解决方法。 要统计出项目中方法执行时间大于1秒的那些方法!我们的项目开发使用的是SpringMVC 那么首先想到使用 Aop Aspet 切面统计,那样子更加方便也高效。 1:打开切面!因为项目使用的SpringMVC,项目中的配置文件就配置的 <aop:aspectj-autoproxy pro

Mysql—运行sql的小技巧

本篇集中整理一下执行sql的小技巧,这种方式不仅带来了操作上的便捷,也可以保证数据可以数据的安全性。 1:查询数据(保证查询性能) 首先想先解释一下 SELECT * 和 SELECT t.id , t.name 的性能,结论:后者性能其实总体优于前者,不信可以自己去试验。 在查询的时候最好给表起个 别名,方便找到表中要查询的字段。执行sql的进行多条件查询的时候,使用类如Navicat

ScheduledThreadPoolExecutor 中ScheduleAtFixedRate 和 ScheduleWithFixedDelay方法讲解

java 中ScheduledExecutorService接口是基于线程池设计的定时任务类,每个调度任务都会分配到线程池中的一个线程去执行,也就是说,任务是并发执行,互不影响。 其中的一个实现类是ScheduledThreadPoolExecutor,ScheduledThreadPoolExecutor的uml类图关系如下: (1)>ScheduledThreadPoolExecuto

Linux服务器Tomcat中Catalina.log中定位错误信息方法

不知道做什么,就写点东西吧,分享上次在服务器tomcat日志中查找错误信息的过程!感谢导师提供的脚本,我只是搬运工,拿出来,一个是自己总结积累记录下来,一个是希望能够帮助到网络空间中的你! --阿飞 阅读本

排查IOException Broken pipe 错误,偶遇国外小哥

大家好,我是阿飞云 怕什么真理无穷,进一步有近一步的欢喜 今天我们聊一个异常:java.io.IOException: Broken pipe,为什么会报这个异常,这个异常要怎么解决?以及最后偶遇外国小哥~ 问题描述 最近遇到的一个小问题,希望对你有帮助。前几日在排查一个问题的时候,看到有几台服务器上日志偶发会打印这个错误 Caused by: java.io.IOException: Brok

Openwrt:编译固件提示[mktplinkfw] error: images are too big 错误

在编译mr3420的固件时,添加了luci、jamvm,但是最终编译的固件“openwrt-ar71xx-generic-tl-mr3420-v1-squashfs-factory.bin”的大小仅仅只有3.1MB,为何会如此小巧,心生疑惑下把该固件烧录到路由中,发现luci和java虚拟机都没有添加上去,然后才发现是固件生成失败了。提示如下: /bin/ar71xx/openwrt-ar71