xselはbashスクリプトのファイルに出力されません。

xselはbashスクリプトのファイルに出力されません。

私は現在フランス語を学んでおり、学習プロセスを簡素化するためにWiktionaryで単語を検索して後で確認できるように、検索履歴を保持できるスクリプトが必要です。

私はいくつかの試行錯誤の後にテキスト選択を含むWikipediaページを起動し、選択と選択日をテキストファイルに保存するbashスクリプトを作成しました。

#!/bin/bash

firefox 'https://en.wiktionary.org/wiki/'$(xsel)'#French'
echo $(xsel)$(date +": %Y-%m-%d (%a)") >> fr/word-list.txt

最初の12回はこのスクリプトを使用しましたが、期待どおりに機能しました。しかし、何らかの理由でスクリプトの2行目はもはや完全には機能しません。日付はまだファイルに出力されますが、xsel テキスト選択では出力されません。下の最初の行は予想される出力であり、2番目の行は現在取得されている出力の例です。

enterrement: 2023-06-18 (Sun)
: 2023-06-18 (Sun)

私の愚かなスクリプトが改善されると確信していますが、問題はxsel自体にあるようです。一人で実行しても一貫して動作しないからです。xsel -oxsel -obおよびを使用するときなど、空の出力が返されることがありますxsel -op

混乱するように、スクリプトの最初の行もxselに依存します。はい一貫して働いてください。

ベストアンサー1

私はそれに慣れていないので、xsel問題の原因が何であるかわかりません。

ただし、これに関係なく、一般的に不要な外部コマンドを実行しないでください。問題に対する簡単な解決策は次のとおりです。

#!/bin/bash

xsel="$(xsel)"

firefox "https://en.wiktionary.org/wiki/${xsel}#French"
echo "$xsel$(date +': %Y-%m-%d (%a)')" >> fr/word-list.txt

おすすめ記事