1号线不工作,这两条线不一样吗?为什么?
Line 1 is not working, are not the same these two lines? why?
希望你能帮我解决这个问题...
我有以下代码:
i=1
COMMAND="echo "$((i*19))"; sleep 1; i=$((i+1))"
我不知道为什么这条线不起作用:(调用第 1 行)
($COMMAND; $COMMAND; $COMMAND; $COMMAND) | zenity --progress --text="BAR PROGRESS!!" --percentage=0 --auto-close
我也试过:
($((COMMAND)); $((COMMAND)); $((COMMAND)); $((COMMAND))) | zenity --progress --text="BAR PROGRESS!!" --percentage=0 --auto-close
这行如果有效:(调用第 2 行)
(echo "$((i*19))"; sleep 1; i=$((i+1)); echo "$((i*19))"; sleep 1; i=$((i+1)); echo "$((i*19))"; sleep 1; i=$((i+1)); echo "$((i*19))"; sleep 1; i=$((i+1))) | zenity --progress --text="BAR PROGRESS!!" --percentage=0 --auto-close
他们不应该是一样的?? (第 1 行和第 2 行)
我所做的不是将第 1 行放在第 2 行,而是非常草率,这就是为什么我想使用第 1 行(它具有更简洁和易于理解的语法)
谢谢!!
我建议使用 for
循环而不是尝试将字符串作为命令求值:
for i in {1..4}; do
echo $(( i * 19 ))
sleep 1
done | zenity --progress --text="BAR PROGRESS!!" --percentage=0 --auto-close
希望你能帮我解决这个问题... 我有以下代码:
i=1
COMMAND="echo "$((i*19))"; sleep 1; i=$((i+1))"
我不知道为什么这条线不起作用:(调用第 1 行)
($COMMAND; $COMMAND; $COMMAND; $COMMAND) | zenity --progress --text="BAR PROGRESS!!" --percentage=0 --auto-close
我也试过:
($((COMMAND)); $((COMMAND)); $((COMMAND)); $((COMMAND))) | zenity --progress --text="BAR PROGRESS!!" --percentage=0 --auto-close
这行如果有效:(调用第 2 行)
(echo "$((i*19))"; sleep 1; i=$((i+1)); echo "$((i*19))"; sleep 1; i=$((i+1)); echo "$((i*19))"; sleep 1; i=$((i+1)); echo "$((i*19))"; sleep 1; i=$((i+1))) | zenity --progress --text="BAR PROGRESS!!" --percentage=0 --auto-close
他们不应该是一样的?? (第 1 行和第 2 行)
我所做的不是将第 1 行放在第 2 行,而是非常草率,这就是为什么我想使用第 1 行(它具有更简洁和易于理解的语法)
谢谢!!
我建议使用 for
循环而不是尝试将字符串作为命令求值:
for i in {1..4}; do
echo $(( i * 19 ))
sleep 1
done | zenity --progress --text="BAR PROGRESS!!" --percentage=0 --auto-close