问题描述

当我尝试通过命令./name.sh在命令行中执行文件(name.sh)时,我收到错误消息:

"." is not recognized as an internal or external command, operable or batch file

执行.sh文件的正确方法是?

最佳解决方法

从错误信息来看,你使用的是Windows CMD.EXE。它使用跟Linux不同的语法来执行命令。假设您已经安装了Cygwin或类似的设备,则需要使用sh name.sh。

需要澄清的是,Windows系统上没有内置程序来支持.sh文件。要运行它,您需要安装第三方工具,例如Cygwin。

次佳解决方案

看得出来,您尝试在Windows命令提示符下运行Linux命令。下面从两个方面看这个问题:

第一个方面:

在Linux上,正斜杠是一个路径分隔符。而在Windows上,反斜杠是一个路径分隔符,而正斜杠通常表示一个参数。

因此,Windows认为您正在尝试运行一个名为"."的命令并将其解析为参数"/name.sh"。正确的约定将是".\name.sh"。此外,Windows系统会自动搜索当前目录中的命令,所以您可以直接输入"name.sh"。

第二个方面:

Windows并不知道什么是sh脚本,sh是一个Linux上的概念。通常可以安装Cygwin来解决这个问题,如果你真的想要在windows上运行一个sh脚本。

另外,您也可以将脚本重命名为name.bat,并删除"#!/bin/sh"行。现在你有一个Windows应该理解的批处理文件。更多有关批处理文件参考:这里中的信息。

第三种解决方案

另外一种选择,安装Linux系统吧。从命令提示行输出:

sh runide.sh

要么

sudo sh runide.sh

就可以正常执行程序了。

第四种方案

Windows系统本身不能运行.sh来执行shell脚本。是已经安装了像CygWin这样的东西,程序不能执行?还是就是想在cmd.exe中运行程序?

第五种方案

打个比方,你这样做相当于试图用橙汁代替汽油来驱动你的汽车。

如果一定要这样做,需要安装一个提供"sh.exe"程序或"csh.exe"或"bash.exe"程序(tsh.exe)的环境

或者,如果您非常了解Unix脚本命令,并且您知道Windows .cmd和.bat文件命令,那么您可以将.sh文件转换为.bat或.cmd文件。即使如此,您也将经常遇到更多的Unix风格的程序,在Windows下没有对应,如grep,sed,vi,emacs等。因此,安装CygWin - 只需其中的shell和Unix工具。

其他方案

在Windows中使用Github吧,它包含所有Unix环境需要的可执行文件。

参考资料

linux运行cmd文件sh文件目录,在Windows上,如何执行.sh文件?相关推荐

  1. windows上软件上传至linux上,《如何将windows上的软件包或文件上传到linux服务上》...

    如何将windows上的软件包或文件上传到linux服务上,下一句就是如何让将linux的文件下载到win上.哈哈 方法不止这一种,有超多的方法,要是虚拟机,它自带的有share这个选项,你可以点击v ...

  2. Windows上无法使用thread头文件

    Windows上无法使用thread头文件 问题描述与分析 最近在学习C++多线程编程,没想到第一步就出现了问题.首先写了一份简单的测试代码(位于d:\test.cpp): #include < ...

  3. 将c程序移植到linux,各位大侠:我把原来在linux运行的c程序移植到HPUNIX上出现了错误...

    各位大侠:我把原来在linux运行的c程序移植到HPUNIX上出现了错误 (2012-04-11 00:43:47) 标签: linux c程序 杂谈 各位大侠:我把原来在linux运行的c程序移植到 ...

  4. linux环境下,模拟百度网盘上传、下载文件

    目录 1.题目 2.运行截图 3.总体设计 4.详细设计 5.源码 5.1服务端 5.2客户端 1.题目 1)模仿百度网盘实现一个文件上传.下载.浏览的终端网盘; 2)能够实现文件和目录的存储; 3) ...

  5. android游戏基址,Android上可执行ELF文件中的段不能有基址

    Android上可执行ELF文件中的段不能有基址 @(Android研究)[android] [TOC] 场景 我使用Android NDK的编译工具交叉编译qemu项目(编译可在Android上运行 ...

  6. Windows上python读取grib2文件(不用Linux)

    最近在网上下载的NCEP的fnl数据,发现只有grib2文件格式.因为现在处理数据使用的更多的是python,matlab一类的.网上一搜python读取grib文件需要依赖pygrib库,pygri ...

  7. 利用Linux的文件命名规范在Windows中建立“高权限”文件

    我在前面有一篇文章(<关于文件的存储--windows和Linux比较>)大概的介绍了关于在Windows平台和Linux平台文件命名的异同. 在刚才我正在整理一个包含RHEL系统备份的磁 ...

  8. Htaccess文件是什么以及Windows下自由创建.htaccess文件的N种方法

    .htaccess是什么 概述来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置. 通过htaccess文件,可以帮我们实现:网页301重定向.自定义404错误 ...

  9. Windows上使用Git管理文件

    今天在搜索ffmpeg相关资料时,需要通过.sh脚本文件下载git上的代码文件,最后通过在Windows上安装了git,并在git.bash中执行bash ffmpeg.sh解决了代码下载问题,顺便学 ...

最新文章

  1. Timer 和TimerTask 的定时任务入门
  2. 图灵11月书讯:大约在冬季
  3. [Ubuntu] 解决 pip 安装 lxml 出现 x86_64-linux-gnu-gcc 异常
  4. MySQL中的BLOB类型
  5. poj 2226 Muddy Fields 最小顶点覆盖
  6. Linux实验二:vi编辑器的使用
  7. 31 FI配置-财务会计-应收账款和应付账款-定义容差组(供应商)
  8. linux自动重启保护,Linux在崩溃时自动重启应用程序 – 守护进程
  9. 原创:微信小程序调用【统一下单】、【支付】、【支付回调】api并处理请求...
  10. Java 注解Annotation总结一
  11. 安卓rom制作教程_刹那 刷机教程20-1三星S10 N10等系列 韩版国行安卓9升级10 详细步骤...
  12. Keil中C代码常见错误的解决
  13. 2.4G无线收发器SI24R1低成本替代CI24R1
  14. java 后台将英文名 转换成中文名
  15. ubuntu22.04 安装ROS2
  16. Python3.x爬虫下载网页图片
  17. 即使隐藏脸部也没用 最新步态识别技术将用来辨识嫌疑犯
  18. python装饰器特性iy雾_Python高级特性: 12步轻松搞定Python装饰器
  19. STM32的引脚模式
  20. XP完美模拟Vista全攻略

热门文章

  1. 移动端开发碰到一个坑
  2. 关于java同步包中ConcurrentLinkedQueue类的深入分析与理解
  3. String[]转化暴露“思维误区”
  4. TreeView和DataGridView控件组合使用
  5. 用CMD开启Windows下的服务命令 转载
  6. php sql 字段名称,PHPSQL Server – 字段名称被截断
  7. python获取链接跳转后地址_爬虫:获取多次跳转后的页面url
  8. go语言能编android程序吗,用 Golang 开发 Android 应用(二)—— 简单 UI-Go语言中文社区...
  9. 0.0 Introduction-机器学习笔记-斯坦福吴恩达教授
  10. 【任务脚本】2020双十一活动小结,京东活动依旧始终良心