1
for i in $(seq 1 10); do

echo 'bla bla'

echo 'xxx'

echo $i

done | select=$(zenity --list --title="title" --text="text" --column="X" --column="Y" --column="Z");

私は zenity でチェックリストを作成しようとしていますが、私の問題は $select が常に空であることです。私はこのような他のいくつかの方法でそれをやろうとします:

for i in $(seq 1 10)
do
    x="bla bla"
    y="xxx"
    z="$i"
    table="$table '$x' '$y' '$z'"
done
eval zenity --list --title="title" --text="text" --column="X" --column="Y" --column="Z" $table

このように $select 変数は空ではありませんが、変数 (たとえば $x など) にスペースがある場合、zenity はそれを 2 つ (またはそれ以上) の列に分割します。

コードの他の解決策または修正が必要ですか?

ありがとう!

4

1 に答える 1

1

この他のアプローチを試すことができます:

#!/bin/bash

for i in $(seq 1 10)
do
    echo "bla bla"
    echo "xxx"
    echo "$i"
done | zenity --list --title="title" --text="text" --column="X" --column="Y" --column="Z"

各行は、入力ストリームが終了するまで、最初の列から最後の列までテーブルにデータを入力し、次に新しい行にデータを入力します。

于 2011-10-14T17:22:01.217 に答える