0

我对 C Shell 脚本 (.csh) 完全陌生。我不知道为什么以下脚本无法正常工作。

set Version;
wmic /append: "$Version" wmic os get version;    #This prints: Version
                                                  6.1.7601
echo $Version;    #This does not print anything as $Version is empty
set subVersion = `echo $Version | awk '{print substr($0,2)}'`;
echo $subVersion;    #This does not print anything

请帮助我知道脚本有什么问题。谢谢你。

更新:看起来正在打印的内容实际上是按行wmic /append: "$Version" wmic os get version;& not echo $Version;。所以现在的问题是如何将 wmic 的输出输入到变量中$Version

4

2 回答 2

0

以下代码有助于将输出捕获到变量。现在可以对变量做任何事情:

set Ver = `(wmic os get version)`;
echo $Ver;
于 2013-04-29T07:29:01.087 回答
0

无法对其进行测试,但这里有一些替代方案:

`echo $Version | awk 'BEGIN {FS=".";} {print $1;}'`;

所以使用 awk 的字段拆分功能来获得你需要的东西。awk 有点矫枉过正:

set subVersion = ${Version:0:2}

也应该工作。

于 2013-04-26T07:09:59.563 回答