共通事項 - タスクマネージャ Conky - デスクトップを表示
- 1. 概要
- 2. $DESKTOP_SESSION
1. 概要
本ページより前の方でも、たびたび登場しているかと思いますが・・・。
複数のデスクトップ環境を使い分けたりしている場合、ログインしているのがどのデスクトップ環境であったか、ふとわからなくなったりするときがあります。
「Conky」でそれを表示させておくと、分かりやすくていいなぁと思うものの。
「$XDG_CURRENT_DESKTOP」を「echo」で表示させたりするのですが、デスクトップによっては、「$XDG_CURRENT_DESKTOP」はとれない。
2. $DESKTOP_SESSION
「$DESKTOP_SESSION」が、ほぼ、漏れなく取得できることがわかりました。
しかし、「$DESKTOP_SESSION」だと・・・。
「FreeBSD」「bspwm」の場合
/usr/local/share/xsessions/bspwm
と表示されてしまうのです・・・。
これは、長すぎるし、つらいなぁと思っていて、思いあまって「Linux - echo させた文字列の 末尾の部分を取得したい|teratail」で質問いたしました。
馬鹿なわたしに、親切に教えてくださる方がいて、ありがたいことです。
${DESKTOP_SESSION##*/}
もしくは
$(basename $DESKTOP_SESSION)
で、スラッシュ「/」以降の末尾の文字列が取得できますな。
よって
${color grey}Desktop:$color ${execi 999999 echo ${DESKTOP_SESSION##*/}}
もしくは
${color grey}Desktop:$color ${execi 999999 echo $(basename $DESKTOP_SESSION)}
で、表示できます。
「bash」だけかと思って、ちょっと気になったのですが、「sh」でも同じ操作ができました。
こういうとき、「csh」は、ちょっとつらいのです。
|
|