首页 > 系统相关 >Windows下写脚本无法运行在linux上?怎麽办?

Windows下写脚本无法运行在linux上?怎麽办?

时间:2024-02-27 19:22:05浏览次数:22  
标签:00 x86 Windows 6.0 dos2unix 64 linux 下写 el7

Windows下写脚本无法运行在linux上?怎麽办?

$‘\r‘: command not found的解决方法


在Linux系统中,运行Shell脚本,出现了如下错误:

one-more.sh: line 1: $'\r': command not found
1
出现这样的错误,是因为Shell脚本在Windows系统编写时,每行结尾是\r\n,而在Linux系统中行每行结尾是\n,所以在Linux系统中运行脚本时,会认为\r是一个字符,导致运行错误。

解决方法
去除Shell脚本的\r字符:

方法1
sed -i 's/\r//' one-more.sh






方法2
dos2unix one-more.sh

输出如下:

dos2unix: converting file one-more.sh to Unix format ...

如果出现如下错误:

-bash: dos2unix: command not found

说明dos2unix还没有安装,运行如下命令进行安装:

yum install -y dos2unix


输出如下:

Loaded plugins: fastestmirror, langpacks
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
base                                                                                                                                                                                                                | 3.6 kB  00:00:00     
extras                                                                                                                                                                                                              | 2.9 kB  00:00:00     
salt                                                                                                                                                                                                                | 2.9 kB  00:00:00     
updates                                                                                                                                                                                                             | 2.9 kB  00:00:00     
Determining fastest mirrors
Resolving Dependencies
--> Running transaction check
---> Package dos2unix.x86_64 0:6.0.3-7.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

===========================================================================================================================================================================================================================================

 Package                                                  Arch                                                   Version                                                        Repository                                            Size
===========================================================================================================================================================================================================================================

Installing:
 dos2unix                                                 x86_64                                                 6.0.3-7.el7                                                    base                                                  74 k

Transaction Summary
===========================================================================================================================================================================================================================================

Install  1 Package

Total download size: 74 k
Installed size: 190 k
Downloading packages:
dos2unix-6.0.3-7.el7.x86_64.rpm                                                                                                                                                                                     |  74 kB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : dos2unix-6.0.3-7.el7.x86_64                                                                                                                                                                                             1/1 
  Verifying  : dos2unix-6.0.3-7.el7.x86_64                                                                                                                                                                                             1/1 

Installed:
  dos2unix.x86_64 0:6.0.3-7.el7                                                                                                                                                                                                            

Complete!



实例
最简单的用法就是dos2unix直接跟上文件名:

dos2unix file
如果一次转换多个文件,把这些文件名直接跟在dos2unix之后。(注:也可以加上-o参数,也可以不加,效果一样)

dos2unix file1 file2 file3
dos2unix -o file1 file2 file3
上面在转换时,都会直接在原来的文件上修改,如果想把转换的结果保存在别的文件,而源文件不变,则可以使用-n参数。

dos2unix oldfile newfile
如果要保持文件时间戳不变,加上-k参数。所以上面几条命令都是可以加上-k参数来保持文件时间戳的。

dos2unix -k file
dos2unix -k file1 file2 file3
dos2unix -k -o file1 file2 file3
dos2unix -k -n oldfile newfile




标签:00,x86,Windows,6.0,dos2unix,64,linux,下写,el7
From: https://www.cnblogs.com/nwq1101/p/18037644

相关文章

  • windows上的快捷键以及常见dos指令
    有关windows常用的快捷键普通ctrl+c复制ctrl+v粘贴ctrl+x截切ctrl+s保存ctrl+z撤销ctrl+a全选进阶alt+tab切换窗口win+tab后台win+r运行命令窗口win+e打开我的电脑ctrl+alt+esc任务管理器dos指令打开cmd的方式win键+run+cmd在任意文件夹下面按住shift键+单击......
  • 安装虚拟机(Windows)
    虚拟机安装过程:1.首先创建一台新的虚拟机2.什么都不用做直接下一步3.点击稍后安装操作系统4.选择第一个Windows,版本选择Windows10x64![]5.输入虚拟机的名称和安装位置6.选择你需要的磁盘大小,下面都可以选7.点击完成8.然后开始设置虚拟机9.调整内存10.选择处......
  • Linux 命令指南
    做这个东西有两个用处,一是初赛会考,二是考场上用windows哪里数组越界你都不知道直接RE爆炸。sudo-s输入后填写密码获得管理员权限。cd打开文件或者目录,用法是cd目录名。cd/退回到根目录。mkdir创建一个目录,使用方法为mkdir目录名。ls显示当前目录下的......
  • Windows系统概述及磁盘分区
    Windows系统概述及磁盘分区Windows系统概述Windows系统作为世界上使用者最多,最受欢迎的操作系统,值得热爱者们进行详细的研究.我们将分别介绍Windows系统的安装,维护,优化,以及进阶的高级操作.本教程所有的操作均使用Windows10Professional操作系统.磁盘分区有关磁盘的知......
  • taskkill杀掉Windows上进程
    命令:taskkill/F/IMTLSvpn2.exe/T当出现以下问题,可能是需要管理员权限D:\playwright\tests>taskkill/F/IMTLSvpn2.exe/T成功:已终止PID29812(属于PID11384子进程)的进程。错误:无法终止PID32500(属于PID11384子进程)的进程。原因:拒绝访问。错误:......
  • 安装虚拟机(Linux)
    安装虚拟机的过程:1.创建虚拟机2.不用动,点击下一步3.选择稍后安装操作系统,然后继续点击下一步4.选择Linux,版本选择CentOS7645.设置虚拟机的名称以及位置6.设置磁盘大小7.点击完成8.配置虚拟机9.设置内存10.设置处理器11.配置ISO映像文件12.打开虚拟机1......
  • linux虚拟机安装
    1.点击文件——新建虚拟机或创建新的虚拟机2.选择典型点击下一步3.选择稍后安装操作系统,点击下一步4.客户机操作系统选择Linux(L),版本选择CentOS764位5.可随意更改名称,创建文件夹6.设置虚拟机可用内存7.虚拟机创建完成点击完成即可......
  • RK3588 usb otg口实现UVC gadget,作为usb camara向windows 传输图像
    1、打开内核相关配置CONFIG_VIDEO_V4L2_SUBDEV_API=yCONFIG_MEDIA_USB_SUPPORT=yCONFIG_MEDIA_CONTROLLER=yCONFIG_USB_VIDEO_CLASS=yCONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y CONFIG_V4L_PLATFORM_DRIVERS=yCONFIG_MEDIA_CAMERA_SUPPORT=y......
  • Linux 性能调优之虚拟化调优
    Linux性能调优之虚拟化调优https://mp.weixin.qq.com/s/ypAr1qvAYBFD2BKyjx3HBg写在前面考试整理相关笔记博文内容涉及LinuxVM常见管理操作以及部分调优配置理解不足小伙伴帮忙指正不必太纠结于当下,也不必太忧虑未来,当你经历过一些事情的时候,眼前的风景已经和从前不一......
  • linux shell 中实现进度条
     linux shell中实现进度条:#!/bin/bashtotal_steps=100for((step=1;step<=total_steps;step++));doprintf"\r[%-50s]%d%%"$(printf"#%.0s"$(seq1$((step*50/total_steps))))$((step*100/total_steps))sleep0.1#模拟操作延迟d......