linux下执行shell脚本报“ $'\r':command not found…”错误

2023-10-27

1、现象:

在linux下执行脚本有时会出现错误如下:

“ $'\r':command not found…”

2、原因分析:
脚本本身却没有错误,是由于脚本在windows下打开过编辑过,因为在windows下的换行是回车+换行(\r\n),而在linux下的换行是换行(\n),多了"\r",所以在执行的时候会报错。

3、解决方法:

在linux下通过dos2unix命令转换脚本后即可执行。

可能在linux下需要安装dos2unix,即 “sudo apt-get install dos2unix”

安装后直接转换即可:如dos2unix test.sh

转换后的脚本test.sh即可在linux下执行。

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux下执行shell脚本报“ $'\r':command not found…”错误 的相关文章

  • 确定 TCP Listen() 队列中当前积压的连接数

    有没有办法找出currentLinux 上 TCP 套接字上等待 Accept 的连接尝试次数 我想我可以在每个事件循环上点击 EWOULDBLOCK 之前计算成功的 Accept 数量 但我使用的是隐藏这些细节的高级库 Python Tw
  • 如何从脚本编辑 /etc/sudoers?

    我需要编辑 etc sudoers从脚本中添加 删除白名单中的内容 假设我有一个可以处理普通文件的命令 我如何将其应用到 etc sudoers 我可以复制并修改它 然后有visudo用修改后的副本替换原始版本 通过提供我自己的脚本 EDI
  • 如何在Linux上用C/C++编写Web服务器[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在考虑在 Linux 平台上开发一个小型 阅读 初级 Web 服务器 但我不知道从哪里开始 我希望它能够做的是 监听特定端口 接受
  • Linux中如何避免sleep调用因信号而中断?

    我在 Linux 中使用实时信号来通知串行端口中新数据的到达 不幸的是 这会导致睡眠呼叫在有信号时被中断 有人知道避免这种行为的方法吗 我尝试使用常规信号 SIGUSR1 但我不断得到相同的行为 来自 nanosleep 联机帮助页 nan
  • 如何获取与 shell 中的文件名模式匹配的所有文件的总文件大小?

    我正在尝试仅使用 shell 来计算与文件名模式匹配的所有文件 在目录树中 的总大小 以字节为单位 这是我到目前为止所拥有的 find name undo exec stat c s awk 总计 1 END 打印总计 有没有更简单的方法来
  • 使用 shell 脚本发送 HTML 邮件

    如何使用 shell 脚本发送 HTML 电子邮件 首先 您需要撰写消息 最低限度由这两个标头组成 MIME Version 1 0 Content Type text html 以及适当的消息正文 p Hello world p 获得后
  • 在ubuntu中打开spyder

    我想在ubuntu中打开spyder Python IDE 通常我会在 shell 中编写 spyder 它会打开spyder IDE 现在 当我在shell中编写spyder时 它只是换行 什么也没有发生 类似于按 enter 我如何找回
  • 更新Linux中的包含路径

    我的 my path to file 文件夹中有几个头文件 我知道如何将这些文件包含在新的 C 程序中 但每次我都需要在包含它之前输入头文件的完整路径 我可以在linux中设置一些路径变量 以便它自动查找头文件吗 您可以创建一个 makef
  • bash while 循环的布尔表达式中的 -lt 意味着什么?

    我猜测它代表小于基于输出 但是我在哪里可以找到有关此语法的文档 bin bash COUNTER 0 while COUNTER lt 10 do echo The counter is COUNTER let COUNTER COUNTE
  • Linux shell 从用户输入中获取设备 ID

    我正在为一个程序编写安装脚本 该程序需要在其配置中使用 lsusb 的设备 ID 因此我正在考虑执行以下操作 usblist lsusb put the list into a array for each line use the arr
  • “git add”返回“致命:外部存储库”错误

    我刚刚进入 git 的奇妙世界 我必须提交我对程序所做的一系列更改 位于名为的目录中 var www myapp 我创建了一个新目录 home mylogin gitclone 从这个目录中 我做了一个git clone针对公共回购 我能够
  • 如何并行执行4个shell脚本,我不能使用GNU并行?

    我有4个shell脚本dog sh bird sh cow sh和fox sh 每个文件使用 xargs 并行执行 4 个 wget 来派生一个单独的进程 现在我希望这些脚本本身能够并行执行 由于某些我不知道的可移植性原因 我无法使用 GN
  • /sys/device/ 和 dmidecode 报告的不同 CPU 缓存大小

    我正在尝试获取系统中不同缓存级别的大小 我尝试了两种技术 a 使用 sys device 中的信息 这是输出 cat sys devices system cpu cpu0 cache index1 size 32K cat sys dev
  • 如何从 C++ 程序中重新启动 Linux?

    我有一个 Qt 4 GUI 我需要在下拉菜单中提供一个选项 允许用户选择重新启动计算机 我意识到这对于以其他方式重新启动计算机的能力来说似乎是多余的 但选择需要保留在那里 我尝试使用 system 来调用以下内容 suid root she
  • Linux无法删除文件

    当我找到文件时 我在删除它们时遇到问题 任务 必须找到带有空格的文件并将其删除 我的尝试 rm find L root grep i 但我有错误 rm cannot remove root test No such file or dire
  • 在汇编中使用 printf 会导致管道传输时输出为空,但可以在终端上使用

    无输出 https stackoverflow com questions 54507957 printf call from assembly do not print to stdout即使在终端上 当输出不包含换行符时也有相同的原因
  • 为什么 fork 炸弹没有使 android 崩溃?

    这是最简单的叉子炸弹 我在许多 Linux 发行版上执行了它 但它们都崩溃了 但是当我在 android 终端中执行此操作时 即使授予后也没有效果超级用户权限 有什么解释为什么它没有使 Android 系统崩溃吗 一句话 ulimit Li
  • 在内核代码中查找函数的最佳方法[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我开始浏览内核代码 遇到的一件事是如何跟踪函数调用 结构定义等 有没有一种好的方法可以快速跳转到函数定义并退出 我尝试过 Source N
  • 为什么 Linux 原始套接字的 RX 环大小限制为 4GB?

    背景 我试图mmap 我的原始套接字的 RX 环形缓冲区64 bitLinux 应用程序 我的环由 4096 个块组成 每个块大小为 1MB 总共 4GB 请注意 每个 1MB 块中可以有许多帧 如果您好奇 请参阅此文档了解背景信息 htt
  • 如何使用 JSch 将多行命令输出存储到变量中

    所以 我有一段很好的代码 我很难理解 它允许我向我的服务器发送命令 并获得一行响应 该代码有效 但我想从服务器返回多行 主要类是 JSch jSch new JSch MyUserInfo ui new MyUserInfo String

随机推荐

  • excel填充序列_Excel中快速填充序号的3种技巧一次性都教你

    在Excel中填充序号可能是最基础的操作 但是今天我们要分享的并不是简单的1 2 3的填充 而是可以让你录入速度快10倍的excel技巧 其中一些操作90 的人都不知道 一 按数字顺序快速填充 当我们在Excel中输入1 2 3这种顺序的序
  • 【yarn】yarn Task 状态机正常执行流程

    1 概述 上一篇文章 Yarn Yarn Service端如何处理客户端提交的任务 在上一篇文章中 我们知道服务器接收到客户端提交的任务之后 会启动多个状态机进行联合操作 最终来解决任务提交之后的全流程 多个状态机合作完成任务 然后我们看了
  • 若依框架 路由带参数跳转有缓存的解决方法

    若依框架的话 直接打开src api router index js路由配置项 path storage component Layout hidden true redirect noredirect children path orde
  • 关于SpringCloudAlibaba,看阿里这篇笔记真香

    Spring Cloud Alibaba 是国产的微服务开发一站式解决方案 与原有 Spring Cloud 兼容的同时对微服务生态进行扩展 通过添加少量的配置注解 便可实现更符合国情的微服务架构 相比 Spring Cloud 官方标准
  • C++中"endl"和"\n"的区别

    换行符 endl 该符号与 n 的区别 endl 除了具备 n 的功能外 还调用输出流flush函数 刷新缓冲区 让数据直接写入文件或者屏幕上 这两种都可以用的 不过如果需要立即显示 比如输入到显示器的场合 最好用 endl 如果不需要立即
  • 《蓝桥杯真题》:2020年单片机省赛(第十一 / 11届第一场)

    2020年单片机省赛 有关题目 实现代码 main c 写法一 写法二 iic h iic c 有关题目 实现代码 注意 代码实现方面 从eeprom读出数据的过程中要注意不跟和从pcf8591读取数据一样 不需要rd eeprom 0x0
  • go之构建简单的web服务器3.0

    引入etcd模块 实现对etcd的增删改 目录架构如下 etcd go代码 package storage import context time fmt errors clientv3 go etcd io etcd client v3
  • C与PHP的联系与区别

    联系 1 PHP是C语言实现的一个应用软件 PHP的程序执行 最终也是调用C函数 很多时候 一些要优化性能的工作可以通过对PHP进行C扩展来实现 区别 0 PHP是面向对象语言 C是面向过程的函数过程式语言 1 PHP是弱类型语言 使用变量
  • 【Inno Setup】Inno Setup覆盖安装前执行卸载、获取原安装路径

    Inno Setup Inno Setup覆盖安装前执行卸载 获取原安装路径 分享下目前用到的一个简单的 Inno Setup 安装包制作脚本 主要功能有3个 安装前检测是否已安装 如果是覆盖安装则提示是否先进行卸载 程序卸载时不会自动卸载
  • Navicat Premium下sql导入中文乱码解决方案

    最近帮客户导数据比较多 用阿里云感觉不方便 Navicat Premium还是好用 但是数据稻城excel就会乱码 解决方案 1 看图说话 右键选中 2 三条SQL完成 mysql gt show databases Database in
  • 「Python 面试」第六次面试

    1 说一说 Redis 是什么 Redis 是一种 Key Value 的内存型 非关系型数据库 属于 NoSQL 的一种 Redis 的读写速度特别快 特别适合读写频繁的场景 Redis 支持主从复制 支持数据持久化 2 知道 Redis
  • MMD相关制作

    1 导入可转换mmd和vmd 动作数据 的插件 导入后unity中为 2 导入模型和vmd和音频 3 在unity中点击模型右边弹出的协议全打勾并应用 4 其中的mmd动作数据转换成功 点击人物把rig下第一个选择Huamoid点击应用 再
  • Vue中nextTick使用

    1 语法 this nextTick 回调函数 2 作用 在下一次Dom更新结束后执行其指定的回调函数 3 使用场景 当数据改变后 要基于更新后的新Dom进行某些操作时 要在nextTick所指定的回调函数中执行
  • 查询oracle所用用户,查询所有用户(oracle查询所有用户)

    查询所有用户 oracle查询所有用户 2020 07 24 11 10 05 共10个回答 1 查询oracle中所有用户信息select fromdba users 2 只查询用户和密码selectusername passwordfr
  • 数据结构---桶排序

    桶排序 第一步 第二步 第三步 第四步 JAVA实现 时间复杂度 空间复杂度总结 每一个桶 bucket 代表一个区间范围 里面可以承载一个或多个元素 第一步 就是创建这些桶 并确定每一个桶的区间范围 我们这里创建的桶数量等于原始数列的元素
  • python Matplotlib库基础

    目录 Matplotlib 数据可视化入门 Pyplot 绘图 自定义配置文件 rcParams 创建绘图窗口 绘制子图 绘制饼图 绘制折线图 绘制条形图 绘制散点图 绘制热点图 绘制箱型图 绘制分类图背景 显示绘图窗口 DataFrame
  • FATFS文件系统f_mkfs函数详解

    1 f mkfs参数 参数path 要挂载 卸载的逻辑驱动器号 使用设备根路径表示 参数opt 系统的格式 如图所示 若需要格式化为FAT32文件系统 则选择FM FAT32即可 若需要格式化为exFAT文件系统 则应该开将宏定义 defi
  • kNN做回归任务

    kNN回归 kNN常用作分类任务 但是也可以做回归任务 做法 使用kNN计算某个数据点的预测值时 模型会从训练数据集中选择离该数据点最近的k个数据点 并且把他们的y值取均值 把该均值作为新数据点的预测值 代码 此次代码演示使用数据库中的鸢尾
  • AI业务强劲增长,百度迎来了“推卒过河”的纵横时刻

    文 螳螂观察 作者 陈淼 科技创新面临的处境与机遇大多与中国象棋中的 卒 相似 单次只能走一步 不像其他棋子一次能走多步 然而一旦 推卒过河 卒 就可纵可横 能发挥出极大的作用 因此 也就有了 过河走卒胜似车 的谚语 这种境遇像极了今天在人
  • linux下执行shell脚本报“ $'\r':command not found…”错误

    1 现象 在linux下执行脚本有时会出现错误如下 r command not found 2 原因分析 脚本本身却没有错误 是由于脚本在windows下打开过编辑过 因为在windows下的换行是回车 换行 r n 而在linux下的换行