Board logo

标题: [系统相关] 批处理如何切换进unix环境?谢谢先 [打印本页]

作者: Alvan    时间: 2015-1-4 09:57     标题: 批处理如何切换进unix环境?谢谢先

最近的工作重新接触了用批处理的,想请教一个事,谢谢
做一个软件调试工作,需要在windows下进入unix,按照软件指导手册的办法是:
1.打开运行指令,输入CMD,启动CMD窗口。
2.输入cd d:,再输入cd opt\fox\ciocfg\api\
3.切换到上述根目录后,输入SH,回车,此时会进入unix环境,便可输入软件定义的各种调用命令,比如save_all,导出软件设置参数。

经在网上搜集资料学习,本人整理出以下脚本,可实现双击批处理文件打开当前进度到第3个步骤,但是还得手动输入sh,才能进入unix环境,请问是我的用法不对吗?
我想实现双击一个bat文件,自动执行sh命令,以切换到unix命令行环境,并可以自动执行unix做支持的调用命令,特此请教大家指点,谢谢。

附:我现在用的脚本(感觉sh那行没起作用)
  1. @echo off
  2. cmd /k cd /d D:\opt\fox\ciocfg\api\
  3. sh
复制代码

作者: DAIC    时间: 2015-1-4 10:24

BAT不支持这种交互操作
可以用VBS的SendKeys
作者: yu2n    时间: 2015-1-4 11:40

没用过,只能想象 ...
  1. @cmd /k cd /d D:\opt\fox\ciocfg\api\ & sh
复制代码
  1. @cmd /k pushd "D:\opt\fox\ciocfg\api\" & sh
复制代码
  1. @echo off
  2. pushd "D:\opt\fox\ciocfg\api\"
  3. set "CurDir=%CD%"
  4. path %path%;%CurDir%
  5. sh
复制代码

作者: tmplinshi    时间: 2015-1-4 12:30

本帖最后由 tmplinshi 于 2015-1-4 12:33 编辑

把“cmd /k”去掉,直接“cd /d D:\opt\fox\ciocfg\api\”即可。

可通过下面的例子来理解:
  1. @echo off
  2. notepad
  3. echo a
  4. pause
复制代码
运行后,你要关闭记事本,cmd 才会继续执行。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2