怎样获得windows cmd下执行命令后的返回值

zcmerlin 2017-06-01 07:43:33
windows环境下, 想获得执行cmd命令后的返回值

如cmd下,执行dir,stdout中输出了当前目录的列表,执行后的返回值怎么获得,想知道返回值是0还是多少,怎么打印出来

另,windows有没有什么命令行工具,比如像linux中的grep、nstat之类的,并不是要找和windows中对应的类似grep、nstat这样的命令,而是linux的程序大多是命令行的形式,windows下现在还有没有命令行程序可以安装
...全文
17417 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lst0426 2019-10-13
  • 打赏
  • 举报
回复
直接读 %errorlevel% 变量的值就行。echo出来重定向也行。
这个怎么读取啊,怎么操作
X-i-n 2017-06-02
  • 打赏
  • 举报
回复
最省事的是重定向到一个文件里 grep功能可以用find实现。netstat就不清楚了。如果对命令提示符完全没了解,倒是可以考虑学习一下power shell。这个功能更强大,cmd和shell比功能还是太弱,powershell的功能更完备。 如果你装的是win10,可以装一个bash组件
zcmerlin 2017-06-02
  • 打赏
  • 举报
回复
引用 7 楼 Runnerchin 的回复:
直接读 %errorlevel% 变量的值就行。echo出来重定向也行。
多谢
X-i-n 2017-06-02
  • 打赏
  • 举报
回复
直接读 %errorlevel% 变量的值就行。echo出来重定向也行。
zcmerlin 2017-06-02
  • 打赏
  • 举报
回复
引用 5 楼 Runnerchin 的回复:
%errorlevel%
那%errorlevel%怎么获取呢,可以重定向到文件中吗
X-i-n 2017-06-02
  • 打赏
  • 举报
回复
%errorlevel%
zcmerlin 2017-06-02
  • 打赏
  • 举报
回复
引用 3 楼 Runnerchin 的回复:
返回值是什么概念?它的返回值就在stdout里了呀。 还是说类似shell里的$?,命令运行的成功/失败状态?这个是%errorlevel%。
就是类似C程序里的 return后跟的那个值,正常是0,异常分别对应不同数值 对cmd命令内部不了解,不知道有这种返回值吗
X-i-n 2017-06-02
  • 打赏
  • 举报
回复
返回值是什么概念?它的返回值就在stdout里了呀。 还是说类似shell里的$?,命令运行的成功/失败状态?这个是%errorlevel%。
zcmerlin 2017-06-02
  • 打赏
  • 举报
回复
引用 1 楼 Runnerchin 的回复:
最省事的是重定向到一个文件里 grep功能可以用find实现。netstat就不清楚了。如果对命令提示符完全没了解,倒是可以考虑学习一下power shell。这个功能更强大,cmd和shell比功能还是太弱,powershell的功能更完备。 如果你装的是win10,可以装一个bash组件
我会把stdout和stderr的内容重定向到一个文件里,用a.exe 1> a.txt、a.exe 2> a.txt 还请教一下怎样把返回值重定向到文件中呢

4,164

社区成员

发帖
与我相关
我的任务
社区描述
Windows专区 一般软件使用
社区管理员
  • 一般软件使用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧