cmd命令行带参启动程序

有一些程序不支持被直接启动,编写代码时,我们可以通过Process类来启动某个进程(某个软件),在不用代码调从而启动某个软件时,windows系统下,通常我们会用到cmd命令行来启动。本文将介绍 cmd常见的命令行启动参数。

1.cmd帮助

  Win+R快捷打开运行窗口,输入cmd确定打开cmd.exe程序。

  cmd帮助:打开 cmd窗口中输入:cmd /?,回车。即可看到相应指令的含义。

2.cmd启动参数

  使用cmd来启动某个应用程序,并向应用程序传入参数:

  下面的指令将使用cmd 间接启动 E盘下的ExportBatchTool.exe程序,并给ExportBatchTool .exe 程序传入C:\190627.whd的启动参数:

  cmd /C E:\ExportBatchTool.exe C:\190627.whd

  /c 在执行完程序之后,cmd也会终止。

  命令:cmd /K E:\ExportBatchTool.exe C:\190627.whd同样会启动ExportBatchTool.exe程序并传递C:\190627.whd参数。

  但是,/k 在执行完程序之后,cmd.exe 依然会继续运行,所以 /c 命令会更适用于自动化的脚本,而 /k命令则更适用于半自动化的脚本。

  Cmd窗口下,直接输入:Start E:\ExportBatchTool.exe C:\190708.whd同样会启动ExportBatchTool.exe程序并传递C:\190627.whd参数。

  START含义:启动单独的窗口以运行指定的程序或命令。Cmd下输入help命令即可查看相应指令含义。

3.参数传递注意事项

3.1多参数传递

  不管java编写的还是C#写的程序,其入口是program类中的main函数,此函数可以接收一个string[]类性的参数。所以,cmd参数传递只能传递字符串数组。那么数组元素怎么区分?cmd以一个空格来区分

  在上面例子中,路径均不涉及空格,且只有一个。如果路径中有空格的话,为避免将此空格用来区分元素,需用引号将包含该空格的元素(路径)引起来,表示一个整体。但实际上,当你此时真给路径加引号,会发现 cmd 就会不识别你的命令路径。

  解决办法

  在整个传给 cmd的命令外层再加一层引号,如:

  cmd /c " "D:\test flo\test.exe" c:\6283.whd "。

3.2特殊字符传递

  在cmd帮助中已有详细的解释说明。现将部分摘录如下,具体参考cmd帮助指令来查看特殊字符处理方式:

  如果字符串加有引号,可以接受用命令分隔符 “&&” 分隔多个命令。

  另外,由于兼容性 原因,/X 与 /E:ON 相同,/Y 与 /E:OFF 相同,且 /R 与 /C 相同。任何其他开关都将被忽略。

  如果指定了 /C 或 /K,则会将该开关之后的命令行的剩余部分作为一个命令行处理,其中,会使用下列逻辑 处理引号(")字符:

  1)如果符合下列所有条件,则会保留命令行上的引号字符:

    - 不带 /S 开关;

    - 正好两个引号字符;

    - 在两个引号字符之间无任何特殊字符, 特殊字符指下列字符: &<>()@^|;

    - 在两个引号字符之间至少有一个空格字符;

    - 在两个引号字符之间的字符串是某个可执行文件的名称。

  2)否则,老办法是看第一个字符是否是引号字符,如果是,则去掉首字符并删除命令行上最后一个引号,保留最后一个引号之后的所有文本。

---------

参考博客文章:https://blog.csdn.net/WPwalter/article/details/94128623

转载于:https://www.cnblogs.com/DiKingVue/p/11326359.html

cmd命令行带参启动程序相关推荐

  1. 命令行带参数启动--命令行相关问题 代码规范

    20210106 其实cmd和Linux一样可以通过特殊符号换行的: Linux 为 \ 而cmd 为 ^ 命令行换行符 20201127 options 代码编写变量意义 20200728 a.py ...

  2. ASP.NET Core:CMD命令行+记事本 创建Console程序和Web Application

    今天看了Scott关于ASP.NET Core的介绍视频,发现用命令行一步一步新建项目.添加Package.Restore.Build.Run 执行的实现方式,更让容易让我们了解.NET Core的运 ...

  3. cmd传入命令行打开程序_打开cmd命令行 - 卡饭网

    win7如何打开cmd命令提示符的方法 win7如何打开cmd命令提示符的方法 win7如何打开cmd? 有两种打开cmd命令行窗口的操作方法: 第一,单击"开始"菜单按钮,然后在 ...

  4. CMD命令行中以管理员权限启动应用程序实现方法

    这篇文章主要介绍了CMD命令行中以管理员权限启动应用程序实现方法,本文使用一个JS脚本来实现,需要的朋友可以参考下 很多时候我们需要管理员权限来运行bat那么就需要结合vbscript来实现了 方法一 ...

  5. Linux C程序命令行传参

    在命令行环境下,执行已编译的程序时,将命令行参数以同一行的附加参数的形式传入到要执行的程序中.C编译器允许main()函数没有参数,或者有两个参数(也有可能更多,是对标准的扩展).一般形式为" ...

  6. 安装jdk配置环境、cmd命令行测试环境变量配置是否正确及运行java程序、安装IDEA编写代码测试

    文章目录 1.安装jdk配置环境 2.cmd命令行测试环境变量配置是否正确及运行java程序 3.安装IDEA编写代码测试 1.安装jdk配置环境 首先打开官网Oracle https://www.o ...

  7. CMD 命令行查看端口被哪个程序占用,并根据PID值,找到相应的程序,关闭掉对应服务或进程!...

    CMD 命令行查看端口被哪个程序占用,并根据PID值,找到相应的程序,关闭掉对应服务或进程! 不用任何第三方软件的情况下,打开CMD执行如下命令:1,netstat -ano 你可以查看到Local ...

  8. 怎么让cmd命令行不关闭或查看tomcat启动一闪而过的原因

    场景:在运行tomcat的时候或者其他的bat文件,想保持cmd命令行窗口一直打开,以便查看里面的信息 现在你有一个startup.bat命令行文件,一般情况下正常启动是可以一直显示cmd命令行窗口的 ...

  9. 解决 CMD 命令行【不是内部或外部命令,也不是可运行的程序】或者【发生系统错误,拒绝访问】

    我们有时候使用 cmd 命令行,会遇到如下错误: XX不是内部或外部命令,也不是可运行的程序.或者"发生系统错误,拒绝访问".怎么办? 是因为我们使用的是普通用户的权限[Users ...

  10. Windows在cmd命令行环境下运行c程序

    现在有许多便利的编译器,例如DevC++,sublime,vscode等等,在这些编译器里面我们添加必要的插件就可以直接运行C语言程序.但是还有一种我们可以采取的普适的运行C程序的方法--在cmd命令 ...

最新文章

  1. 仅需6步,教你轻易撕掉app开发框架的神秘面纱(4):网络模块的封装
  2. NSOperationQueue
  3. 图像补运算:MatIterator_迭代器反色处理
  4. [转载]使用RoboCopy 命令
  5. 最简实例说明wait、notify、notifyAll的使用方法
  6. 获取map第一个的key和value_谁要是再敢用Map传参,我过去就是一JIO
  7. SAP UI5 OData Json model name
  8. oc基础-self关键字的使用
  9. java xml文件无法打开,java – 无法打开beans.xml(配置文件)因为不存在
  10. iOS中使用UIActivityViewController系统分享到微信QQ微博包含文字图片URL
  11. Lightroom Classic 教程,如何在 Lightroom 中增强照片的孤立区域?
  12. Emoji表情符号在MySQL数据库中的存储
  13. kali 克隆网页_Web侦察工具HTTrack (网站克隆)
  14. 海量Oracle学习视频分享
  15. 解决微信开发者工具的不信任问题
  16. 基于GNU Radio和HackRF/LimeSDR的802.11收发机
  17. Android图片轮播控件 如果对你有帮助请star哦!
  18. Android动态获取权限(读写、获取手机状态、定位)
  19. 特殊节日网站全体变成黑灰色
  20. 一文理解二元logistic回归

热门文章

  1. 消除blur属性的边框
  2. 互联网企业架构初期选择--初期技术选型
  3. 地址解析协议ARP:ARP欺骗
  4. 会声会影保存的文件在哪里
  5. PopTip View
  6. 快速生成移动设备应用图标的在线工具 - makeappicon
  7. Apache Lucene 3.x推荐教程
  8. 用OCR技术识别验证码---tesseract
  9. java连接Neo4j服务器
  10. 求助!妹子一个rm -rf把公司服务器数据删没了,我该怎么办