我覺得自己像一個白癡。我需要一個BASH函數,每次調用它時都會交替出現值。腳本本身非常簡單,如果我直接調用該函數,它就可以工作。但是在一個字符串內部調用時它不起作用。代碼如下:BASH函數內部回顯字符串
odd_or_even()
{
if [ $ODDEVEN -eq 1 ]; then
echo "odd"
let "ODDEVEN+=1"
else
echo "even"
let "ODDEVEN-=1"
fi
}
ODDEVEN=1
odd_or_even # Prints "odd"
odd_or_even # Prints "even"
echo "<td class=\"`odd_or_even`\">Test</td>" # Prints class=odd
echo "<td class=\"`odd_or_even`\">Test</td>" # Prints class=odd
BASH是否對字符串內部調用函數有限制?它似乎工作,因爲它輸出的東西,但它不執行數學運算。