2012-02-02 9 views
26

基本的には、「Hi、today is -dateandtime-」のように、ターミナルにメッセージの後に日付と時刻を付ける必要があります。echoコマンド文にUNIXコマンドの日付を追加するには

echoは最初のビットを達成することができ、dateは最後のものを達成することができますが、別々に行うことができます(1つのコマンドでそれらをまとめて出力する方法)。

はそれではなく、1行でいエコーこんにちは

-newコマンド -

ように。回答のパイプラインはありますか?これはそれを行うだろう

答えて

50

echo "Hi, today is $(date)" 
+0

ありがとうございます。 :D –

+0

+1バッターの代わりに$()を使用しているため、純粋なプリンシパルで+1します(しかし、mimisbrunnrの解決策はより正確です) –

3
echo Hello there, today is `date` 

あなたはまた、のような修飾子を使用して日付の出力をフォーマットすることができます。

echo Hello there, today is `date +%D` 

は、修飾子の完全なリストについてはman dateを参照してください。

+0

魅力のように動作します。 –

8

日付時刻は任意の書式文字列で表されます。バッククォートは、トリックを行います

> date +"Hi, today is - %a %b %e %H:%M:$S %Z %Y" 
    Hi, today is - Thu Feb 2 03:28: CET 2012 
+0

あなたのコマンドは表示されているもののようなものではありません: 'こんにちは、今日は - 木曜日2月2日03:28:CET 2012' – jlliagre

+0

ええ、フォーマットの文字列を編集しました。 – zellio

0

:この特定の問題については

echo "Hi, today is" `date` 
1

は、ミーミルの泉のソリューションを行くための正しい方法です。エコーにデータを追加する一般的な方法については、よくあるテクニックをご覧ください。

 
$ echo 'Hi, today is ' | tr -d '\012'; date 
Hi, today is Wed Feb 1 18:11:40 MST 2012 
$ echo -n 'Hi, today is '; date 
Hi, today is Wed Feb 1 18:11:43 MST 2012 
$ printf 'Hi, today is '; date 
Hi, today is Wed Feb 1 18:11:48 MST 2012 
関連する問題