【问题标题】:obtain IP address and store it in a property - ant获取 IP 地址并将其存储在属性中 - ant
【发布时间】:2014-10-21 07:13:07
【问题描述】:

我对Ant很陌生,我找到了这段代码来获取本地ip地址:

<target name="if_windows" depends="checkos" if="isWindows">
    <exec executable="cmd" outputproperty="myHostName">
        <arg value="/c" />
        <arg value="hostname"/>
    </exec>

    <exec executable="cmd" outputproperty="infraServerIPTemp" >
        <arg value="/c"/>
        <arg value="FOR /f &quot;tokens=1 delims=:&quot; %d IN ('ping ${myHostName} -4 -n 1 ^| find /i &quot;reply&quot;') DO FOR /F &quot;tokens=3 delims= &quot; %g IN (&quot;%d&quot;) DO echo infraServerIP=%g > myIP.properties"/>
    </exec>

    <property file="myIP.properties"/>
</target>

现在问题是我已经尝试了几个小时将其放入属性而不是属性文件中。但我就是无法完成它。有人可以帮我吗?

谢谢,

【问题讨论】:

标签: ant properties ip


【解决方案1】:

试试:

<target name="Foo2">
    <property environment="env"/>
    <property name="env.HOSTNAME" value="${env.COMPUTERNAME}"/><!--On Windows the hostname is in the environment variable 'COMPUTERNAME', on Linux the environment variable is 'HOSTNAME'-->
    <hostinfo prefix="host" host="${env.HOSTNAME}" />
    <echo>${host.ADDR4}</echo>
</target>

我不确定是否有简单的方法可以做到这一点 - IP 可能取决于您的 Internet 适配器。就我而言,我有 2 个虚拟适配器,但这个解决方案不起作用。

查看How to get fully qualified hostname using Ant主题

【讨论】:

    猜你喜欢
    • 2018-08-10
    • 1970-01-01
    • 2013-04-25
    • 2021-06-27
    • 1970-01-01
    • 1970-01-01
    • 2010-12-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多