時間に時間を発表しますか?


10

Macには、コンピューターに時間単位で時間を音声で通知させる機能があります。Ubuntuにも同様の機能はありますか?それはすでにこれを行っているパッケージがあるのsayですか、それとも時間の時間を読み取るようなものを構成する必要がありますか?もしそうなら、どうすればそれを行うのですか?Ubuntu GNOME 15.04とGNOME 3.16を実行しています。


dateテキストで出力します。多分あなたはそれをテキスト読み上げプログラムにパイプすることができますか?
Promille、2015年

@ワイルドカード:あまりにも多くのことを言っているので、そのコマンドの出力を大幅にトリミングして変更する必要がありますが、私が必要とするのは、次のようなものです([time]時間に置き換えられます):It is now [time] O'clock

私の答えを見て、それがいくつかに役立つことを願っています。「それは今...」のように、それは一緒に時間を発表する前にも何かを追加することができますsed
Promille

うわー、これは迷惑そうですね。
オービットのライトネスレース'18年

@LightnessRacesinOrbit:はい、そうなっています...:D

回答:


20

あなたはあなたのcrontabを使うことができます

  1. 小さなスクリプトを作成する

    mkdir -p ~/bin
    nano ~/bin/say_hour
    

    以下のコードを追加

    #!/usr/bin/env bash
    my_date=$(date +'%H:%M:%S')
    padsp espeak "$my_date"
    

    実行権限を設定します

    chmod +x ~/bin/say_hour
    
  2. crontabを編集する

    crontab -e
    

    以下の設定を追加します

    0 * * * * bin/say_hour
    

espeak以下のいずれかの可能性で行を置き換えることができます

sudo apt-get install espeak
espeak $(date +"%H:%M:%S")
espeak $(date +%T)

# Adjust speed with `-s`, in words per minute, default is 160
espeak -s 10 $(date +"%H:%M:%S")

または

sudo apt-get install festival
date +"%H:%M:%S" | festival --tts
date +%T | festival --tts

または

sudo apt-get install speech-dispatcher
spd-say $(date +"%H:%M:%S")
spd-say $(date +%T)

# Adjust speed with  (-100 .. 0 .. 100)
spd-say -r -50 $(date +%T)

  • %I –時間(01..12)形式
  • %H –(00..23)形式の時間
  • %M –分(00..59)
  • %S –秒(00..60)
  • %THH:MM:SS24フォーマット

その他のオプションを経由してman dateman espeakman festivalおよびman spd-say


これは機能しません> 。入力が必要なだけで、そのうちの1つが表示されます。

@AB nice =)...速度を調整することは可能ですか?
Ravan

1
すごい@ABが働いている:) +1
Ravan

その時間に実行する方法を回答に含めてもらえますか。おそらく私はそれらについて知っているcronジョブを使用して、それらがどのように機能するかを示しますが、実際に手動で設定したことはありません。

実際、私は自分のデスクの下にRaspberry Piを置いて、これを正確に実行します(さらに多くのことを実行します)。フルフェスティバルではなく、フェスティバルライト(flite)を実行します。それは1時間で時間を話し、(hh:mm)Wake-on-Lanパケットを送信するたびに話します。少しゆっくり話すように(set Duration_stretch=1.3)設定すると、より心地よい声のトーンが得られます。
Jos

5

これはあなたにスピーチの時間を与えます(より良い構文を提供してくれたkosに感謝します):

まず、インストールsay中に発見され、gnustep-gui-runtime

sudo apt-get install gnustep-gui-runtime

それを実行します。

24時間モード:

say "$(date +%R)"

12時間モード

say "$(date +%I:%M%p)"

その時間に実行する方法を回答に含めてもらえますか。おそらく私はそれらについて知っているcronジョブを使用して、それらがどのように機能するかを示しますが、実際に手動で設定したことはありません。

すみません、@ ParanoidPandaの方法がわかりません。他の誰かがそうした場合、彼らはそれをコメントとして投稿でき、私はそれを私の投稿に含めます
Promille


@ワイルドカード:ABは彼の回答にそれを含めたので、おそらくそこからそれを取得するか、kosがコメントしたものを読むことができます。:)

@ParanoidPanda ABは受け入れられた答えを持っているので、それほど重要ではありません
Promille
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.