zoukankan      html  css  js  c++  java
  • Shell 调用 window 命令之间交互

    Linux shell 在Linux 就是一个命令粘合器,很容易把那些工具组合起来,行程一个更强大的工具,或者让手头的工作自动化起来。

    Window上也有batch ,理论上也有这样的功能。 但是其语法和功能与Linux 上的shell 比起来,不可同日而语。

    如果有的命令只有window版本,如果用linuxshell 调用window的命令,并且参数传递?

    问题: 想用Linux 上面的shell及其工具如何与window上面的命令结合起来?

     答案是:cywin.

     cywin,在window 上模拟linux的运行环境,同时又可以调用原生态的window 命令。

     比如:

    for i in $(ls -R)

    do

    out=$(
    ./test.exe $i) #invoke the window program with the parameter from shell.
    echo $out

    done
    可以不用window那难写的batch 语法,直接调用linux 命令,运行window命令。

    另外一个问题:用wine替代cywin 在Linux 上面运行 window 命令?

    for i in $(ls -R)

    do

    # In Linux environment, it will invoke the window command through wine
    # redirect the output of wine to NULL
    out=$(wine test
    .exe $i 2>/dev/null)
    echo $out

    done

    不错也可以运行。这也是一个解决方案。

    但是,往往很多程序在wine上面运行不起来,这时候还是推荐cywin。

    此外,另外还有一个强大工具: ipython

    这是一个基本python的,跨平台的,支持与linux/window 的shell交互的。其支持“!” 运算符,可以调用系统的命令。值得一试。

  • 相关阅读:
    C++数组释放问题
    C# 线程与进程
    Inspector面板Debug模式
    Unity实现汉诺塔游戏
    Unity中的销毁方法
    如何修改Unity中脚本模板
    序列帧动画
    Unity中的射线和射线图层过滤使用方法
    简单第一人称射击游戏
    C# 集合和泛型
  • 原文地址:https://www.cnblogs.com/zhyg6516/p/1990084.html
Copyright © 2011-2022 走看看