一个shell脚本执行出错的问题

Shell脚本中命令的执行顺序 目录一、分号二、&&三、||四、空 一、分号 执行命令中间的 “分号” 代表命令之间没有逻辑关系,分号连接的命令会按照顺序从前向后依次执行,但分号两端的命令之间没有任何逻辑关系,所有写出来的命令最终都会被执行,即使分号前面的命令出错也不影响后面的命令。 例如:command1 ; command2 二、&& “&&” 表示逻辑与。&& 连接的命令会按照顺序从前向后执行,只有当 command1 正确执行才执行command2,如果 comma 阅读详情

1. 问题出现背景

    因为最近在调试,总是做一些很繁琐的工作,所以就想着搞个shell脚本玩玩~

2. 问题

    shell脚本看得比较多,还是第一次写奋斗,东拼西凑地写了几十行,功能总算够用了。结果编译就出错了,错误信息如下:
    /bin/bash^M: bad interpreter: No such file or directory
    

3. 问题分析

    ^M这个符号是回车符,就是说脚本里多了这个符号,网上查了一下,终于明白了原因:我是在windows下编辑的文件,而linux下面的换行符和windows是不一样的……
    【介绍】关于换行符的处理,windows下面是回车+换行,而Linux下面是 换行……所以问题才会出现……

4. 解决办法

    【1】直接在linux下面编辑文件
   【2】使用转换命令:dos2unix,这个命令在linux发行版中一般是没有的,需要安装(sudo apt-get install tofrodos)
   【3】使用命令sed -i -e 's/\r$//' *.sh进行消除回车符

COMSOL报错调试总结(不定期更新) COMSOL报错调试总结1. 可定位错误1.1 除零错误1.2 未定义变量值1.3 边界条件/材料属性等缺失2. 难定位错误2.1. 装配期间内存不足 官方给的案例总是非常完美,运行流畅,结果完美。但是自己做模型时候就总是报错,而且不像自己coding的程序那样可以明确定位哪里出了bug。这里把我碰到的一些报错问题以及调试方法记录下来~ 部分来源于以下参考来源: http://wap.sciencenet.cn/blog-1467490-1118453.html?mobile=1 1. 可定位错误 以下错误 阅读详情

相关推荐

原恒星尘埃生长的三维MHD模拟与湍流效应研究

星际尘埃演化是恒星形成过程中的关键环节,其动力学行为直接影响行星系统的构建。通过磁流体力学(MHD)模拟可以揭示尘埃颗粒从微米级到行星胚胎尺度的生长机制,其中湍流效应通过改变碰撞频率和密度结构发挥双重作用。最新研究采用COALA-RAMSES耦合框架,实现了包含自洽尘埃生长的三维非理想MHD模拟,量化了不同物理环境下尘埃尺寸分布的演化规律。这些发现不仅为解释ALMA观测数据提供理论依据,也对行星形成初期条件约束具有重要意义,特别是在湍流参数化与尘埃生长速率关系方面取得突破。

weixin_30988079的博客 384

报错:docker: invalid reference format.

docker: invalid reference format.

zhamors 1258

STM32F103C8T6的PC13-15引脚配置避坑指南:为什么你的IO口不工作?

本文详细解析了STM32F103C8T6的PC13-15引脚作为普通IO口不工作的原因及解决方案。这三个引脚默认关联侵入检测和低速外部时钟等特殊功能,需先禁用TAMPER和LSE,并开启AFIO时钟,才能正确配置为普通GPIO。文章提供了标准外设库和HAL库的配置步骤、常见问题排查方法及硬件设计注意事项。

weixin_29169899的博客 523

对于docker的报错:invalid reference format解决方法

搭建容器时一直报错 然后查阅后大部分说复制的格式发生了变化 所以便全部手敲指令,并且在指令最后的“.”前面加了一个空格 便成了

qq_39898066的博客 1万+

多模态对齐方案

本文中我们介绍了 13 中常见的大型多模态模型(Large Multimodal Models, LMM),包括 BLIP-2,LLaVA、MiniGPT、Qwen-VL 以及 Ferret 等。最全 LMM 模型结构(13种)综述。单层linear投影、两层mlp。

liguandong 2083

docker:invalid reference format 原因及解决办法

docker:invalid reference format 原因及解决办法

宇弟儿的博客 1万+

RK3568平台(音频篇)麦克风PDM接口录音

PDM = Pulse Density Modulation是一种用数字信号表示模拟信号的调制方法。PDM则使用远高于PCM采样率的时钟采样调制模拟分量,只有1位输出,要么为0,要么为1。因此通过PDM方式表示的数字音频也被称为Oversampled 1-bit Audio。相比PDM一连串的0和1,PCM的量化结果更为直观简单。以PDM方式作为模数转换的接收端,需要用到抽取滤波器(Decimation Filter),将密密麻麻的0和1代表的密度分量转换为幅值分量,而PCM方式得到的已经是幅值分量了。

weixin_49303682的博客 5195

问题解决:”Error response from daemon: invalid reference format: repository name must be lowercase”

问题:”Error response from daemon: invalid reference format: repository name must be lowercase” 解决方法: 出现该问题的原因是docker镜像命名错误,存在大写字母。 原代码: docker build -t jenkinsTest_djangotest:0.1 . 修改后: docker b...

小白的编程之旅 5万+

讲透 ABAP CDS 注解名称:简单名、结构化名、@ 与 @<、作用域与分组

本文从开发者角度梳理ABAP CDS注解的命名规则与实战写法,重点解析: 语法规则:@与@<的使用场景、结构化命名规范、作用域唯一性要求 评估机制:ABAP运行时与组件框架的注解处理差异 分组技巧:花括号分组简化重复前缀的书写 实战示例:包含完整CDS View Entity(演示注解分组与@<用法)和ABAP报表(读取打印注解) 常见问题:命名错误导致激活失败、框架忽略等注意事项 最后通过航空预订统计案例,展示如何结合多种注解类型实现业务需求。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 262

CDMamba安装配置Windows(50系列的显卡)

本人家里的显卡是RTX3050的,运行起来非常缓慢,大家可以参考上一篇文章,以下是用RTX5080配置的CDMamba,里面有一些库没有更新,因此会比较坑爹。就是pytorch已经更新了,搭配的是cuda12.8,但是cdmamba里的mmcv只更新到cuda12.1的版本,当然很多人会说那就向下兼容,但是笔者已经尝试了,会一直提示mmcv的问题。因此,索性直接不用mmcv。

hanfeng5268的博客 686

Docker: 错误invalid reference format

windows cmd执行下列命令导入镜像时出现错误:invalid reference format 其中test_ubuntu.tar为要导入的镜像,test为命名空间,ubuntu为镜像名,冒号后面的v0.1时tag 命令docker import test_ubuntu.tar - test/ubuntu:v0.1 错误:invalid reference format 解决办法 把导入命令中间的横线去掉就可以了 命令docker import test_ubuntu.tar test/ubunt

weixin_48031922的博客 5432

社会网络仿真软件:NetLogo_(14).社会网络数据导入与导出

在NetLogo中,社会网络的仿真不仅依赖于模型的内部逻辑,还需要能够灵活地导入和导出数据。这使得用户可以利用外部数据来初始化模型,或者将模型的运行结果导出以便进一步分析。本节将详细介绍如何在NetLogo中实现社会网络数据的导入和导出,包括常见的数据格式和具体的代码示例。

kkchenjj的博客 600

执行shell脚本时windows和linux换行问题

如何解决运行shell脚本时windows和linux换行符不一致的报错问题

qq_34874789的博客 2837

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

url.sh 项目常见问题解决方案

url.sh 项目常见问题解决方案 项目基础介绍 url.sh 是一个开源项目,它展示了如何通过一个shell脚本来执行一些恶意代码。这个项目主要通过Shell脚本实现,同时包含了Perl、JavaScript、Python和Makefile等其他编程语言。 主要编程语言 Shell (43%) Perl (27%) JavaScript (13%) Python (10%) Makefile ...

gitblog_00029的博客 465

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

oracle定时任务会漂移,定时任务与手动执行脚本时的一个重要注意事项

今天在linux环境下做了一个定时任务,用java程序到oracle中查询数据,手动执行脚本没有问题,但是定时任务执行时却一直报错:- java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1ORA-12705: Cannot access NLS data files or invalid environm...

weixin_39876739的博客 226

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

linux脚本执行出错就退出

需求: 执行 shell 脚本一系列的命令,希望有任务出错就退出,不往下执行,以免出现混乱 1. linux 的set 命令 set -e 2. set 其他参数 -a  标示已修改的变量,以供输出至环境变量。 -b  使被中止的后台程序立刻回报执行状态。 -C  转向所产生的文件无法覆盖已存在的文件。 -d  Shell预设会用杂凑表记忆使用过的指令,以加速指令的执行。使用-d参数可取消。 -e  若指令传回值不等于0,则立即退出shell。 -f   取消使用通配符。 -h  自动记录函数

清泉影月 6365

怎么通过java去调用并执行shell脚本以及问题总结

原文 https://blog.satikey.com/p/5759/how-java-calls-and-executes-shell-scripts-and-summary.html 主题ShellJava 背景 我们在开发过程中,大部分是java开发, 而在文本处理过程中,主要就是脚本进行开发。 java开发的特点就是我们可以很早地进行TDDL, METAQ 等等地对接; 而脚本...

ywl470812087的博客 11万+

Linux 定时执行shell 脚本

2019年第 85 篇文章,总第 109 篇文章本文大约2000字,阅读大约需要6分钟crontab 可以在指定的时间执行一个shell脚本以及执行一系列 Linux 命令。定时执行sh...

AI 算法笔记 4万+

Linux 中执行Shell 脚本的方式(三种方法)

Linux中Shell脚本的执行(三种方法)

timchen525的专栏 14万+

Java执行shell遇到的各种问题

1、基础介绍 Java执行shell需要用到Process类

曹海成的专栏 2万+

在Oozie 中调度执行shell、hive 脚本,以及通过shell脚本执行hive/sqoop/shell脚本的方法

oozie 是一个非常不错的页面可视化程序调度器,优点很明显,但缺点也很多,最恶心的是不支持动态的参数,以及使用sqoop时非常麻烦,因此,最好的方法自然是通过oozie调度一个shell调度脚本,由shell脚本再去调度执行其他脚本。这样可以实现动态传参,和统一控制。

lyp5257918的博客 1万+

一个神奇的错误引出的 Shell 中 source、sh、bash、./ 执行脚本的区别

问题描述: 之前我都是用 ./test.sh 方式执行脚本的,但是后来我看到有 sh test.sh 方式执行脚本,而且这种方式执行脚本的时候,脚本可以不用执行权限。 在此前提下,我执行一个 Flink 脚本的时候突然报语法错误,我用的是 sh bin/config.sh 执行的脚本。 报错信息如下: bin/config.sh: line 32: syntax error near unexpe...

Nick 2119

利用shell脚本自动执行python程序

本文主要介绍如何用shell脚本自动执行py文件 以及我在操作时遇到的各种坑点 介绍一些简单概念 也算给自己做笔记 后面主要是各种坑 什么是shell脚本? Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务. Shell...

倚窗听雨雲的博客 5953

Shell脚本执行的三种方式

参考:https://blog.youkuaiyun.com/timchen525/article/details/76407735 bash script-name 或 sh script-name path/script-name 或 ./script-name source script-name 或 . script-name (1)bash script-name 或 sh script-nam...

Louzen 4122

如何将hive命令执行结果赋值给shell变量和将一个shell脚本的变量赋值给另一个shell脚本

最近遇到把sas代码翻译成hive代码中发现这样一个问题,在sas代码中总是很多重复代码:从指标表中读取指标代码,如果指标代码在表中则执行此程序,不在则不执行。sas中有if和goto语句进行判断,但hive中并没有这样的语法。 以前用的方法是将ETL的表和指标表进行join,on的条件为1=1(因为指标表和ETL的表没有关联字段),再在where条件加上指标表输出的字段is not null的语...

fuyun6363的博客 6669
上一篇: 如何下载chrom store的应用
下一篇: chrome Extensions的存放位置
xiaohuan_study
博客等级 码龄15年 9粉丝 36原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值