UNIX,为C或KornShell中的变量赋值(ksh)

时间:2010-10-14 02:15:09

标签: linux shell unix ksh

当我使用bash运行以下代码时,它会将值5赋给var1。

var1=$(awk '$1>$3{ print "5"}' newfile2)
echo $var1

但是当我在香蕉或其他东西中使用相同的代码时,它会给我错误。有人可以告诉我,如果有其他方法我可以编写此代码,所以我也可以使用C或KornShell(ksh)运行它。

3 个答案:

答案 0 :(得分:4)

对于C shell,请使用

set var=`....`

对于bash / ksh

var1=$(awk '$1>$3{ print "5"}' newfile2)

答案 1 :(得分:1)

使用反引号和csh的set命令。

set var1=`awk '$1>$3{ print "5"}' newfile2`
echo $var1

答案 2 :(得分:0)

请注意,变量名称前后没有空格。 所以,

var1=`ls`

是你需要的。但是,如果你有

var = `ls` 

你会收到错误。

所以,你的代码应该是:

var1=`awk '$1>$3{ print "5"}' newfile2`
echo $var1

确保您使用的是BASH shell,而不是C或TCSH。