热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

cmd命令行带参启动程序

cmd命令行带参启动程序    有一些程序不支持被直接启动,编写代码时,我们可以通过Process类来启动某个进程(某个软件),在不用代码调从而启动某个软件时,windows系统下

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



推荐阅读
  • 本文介绍了Composer依赖管理的重要性及使用方法。对于现代语言而言,包管理器是标配,而Composer作为PHP的包管理器,解决了PEAR的问题,并且使用简单,方便提交自己的包。文章还提到了使用Composer能够避免各种include的问题,避免命名空间冲突,并且能够方便地安装升级扩展包。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • 本文介绍了一种轻巧方便的工具——集算器,通过使用集算器可以将文本日志变成结构化数据,然后可以使用SQL式查询。集算器利用集算语言的优点,将日志内容结构化为数据表结构,SPL支持直接对结构化的文件进行SQL查询,不再需要安装配置第三方数据库软件。本文还详细介绍了具体的实施过程。 ... [详细]
  • 本文介绍了在Win10上安装WinPythonHadoop的详细步骤,包括安装Python环境、安装JDK8、安装pyspark、安装Hadoop和Spark、设置环境变量、下载winutils.exe等。同时提醒注意Hadoop版本与pyspark版本的一致性,并建议重启电脑以确保安装成功。 ... [详细]
  • 【Windows】实现微信双开或多开的方法及步骤详解
    本文介绍了在Windows系统下实现微信双开或多开的方法,通过安装微信电脑版、复制微信程序启动路径、修改文本文件为bat文件等步骤,实现同时登录两个或多个微信的效果。相比于使用虚拟机的方法,本方法更简单易行,适用于任何电脑,并且不会消耗过多系统资源。详细步骤和原理解释请参考本文内容。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
  • 本文介绍了Python语言程序设计中文件和数据格式化的操作,包括使用np.savetext保存文本文件,对文本文件和二进制文件进行统一的操作步骤,以及使用Numpy模块进行数据可视化编程的指南。同时还提供了一些关于Python的测试题。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 如何去除Win7快捷方式的箭头
    本文介绍了如何去除Win7快捷方式的箭头的方法,通过生成一个透明的ico图标并将其命名为Empty.ico,将图标复制到windows目录下,并导入注册表,即可去除箭头。这样做可以改善默认快捷方式的外观,提升桌面整洁度。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • VueCLI多页分目录打包的步骤记录
    本文介绍了使用VueCLI进行多页分目录打包的步骤,包括页面目录结构、安装依赖、获取Vue CLI需要的多页对象等内容。同时还提供了自定义不同模块页面标题的方法。 ... [详细]
author-avatar
手机用户2502922083
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有