接続日時を秒単位で印刷する方法

接続日時を秒単位で印刷する方法

20150405 12:35:12次の日付を秒単位で印刷する方法

cur_date=20150405
cur_time=12:35:12
cur_datetime=20150405 12:35:12

これが私がすることです:

    cur_datetime=$cur_date' '$cur_1st_time
    echo "PDT $prev_datetime CRT $cur_datetime"

    cur_date_SEC=`date -d "$(cur_datetime)" +%s`
    prev_date_SEC=`date -d "$(prev_datetime)" +%s`
    echo "CD:$cur_date_SEC PD:$prev_date_SEC"

私も試しました

`date -d "$prev_datetime" +%s`
`date -d "${prev_datetime}" +%s`

私は何が間違っていましたか?

ベストアンサー1

まず、

$cur_date=20150405
$cur_time=12:35:12

しなければならない

cur_date=20150405
cur_time=12:35:12

また、バックティックを使用しないでください。廃止予定です。構文は$(...)読みやすく、必要に応じて入れ子にすることができます。

以下は、コードの「cur」部分を書き直したものです。

#!/usr/bin/env bash

cur_date=20150405
cur_time=12:35:12

cur_datetime="$cur_date $cur_time"
echo "CRT $cur_datetime"

cur_date_SEC=$(date -d "$cur_datetime" +%s)
echo "CD: $cur_date_SEC"

出力内容は公開しません。時間帯の違いにより表示される内容と異なる可能性があります。

今後、住宅検査Bashスクリプトを書くときにとても便利です。

おすすめ記事