yad
デフォルトでは、yad
出力結果はパイプ文字 ""で区切られます|
。
文字列変数がありますoutput
。これをエコーすると、次の内容が含まれていることがわかります。
/dev/sde|
name0|name1|name2|
すべての垂直バーを改行文字に変更したいと思います。
これはうまくいきません。echo "$output" | tr '|' '\n'
これも機能しません。echo "$output" > /tmp/output; echo $(cut -d'|' -f1 < /tmp/output)
どちらの試みも改行のみを出力します。/tmp/output
作成されると、2 つの空行が含まれますが、テキストは含まれません。
答え1
あなたのtrは大丈夫でしょう。
脱出しよう"\|"
答え2
ついに何が起こっているのか調べました。変数が正しく設定されていません。減らす:
yad --plug=12345 --tabnum=1 &
yad --plug=12345 --tabnum=2 &
output="$(yad --notebook --key=12345)"
echo "$output"
$output
結果が端末に印刷されてからエコーが発生したようです。
しかし、エコーを削除しても効果はありません。それから気づいた最初の2つのコマンドはデータを出力するコマンドです。、3番目の外部yad
コマンドではありません。最初のyadコマンドの先頭に
移動すると、output="$(
空の変数の問題が解決されます。
また、man yad
私が望むものを正確に実行するcliフラグがあることを探索して発見しました。
--separator='\n'