我慢してください。私は強くありませんbash
。文字YYYYMMDDHHMMSS
列形式の日付/時刻があります。20031005000000
私は1年を加えることを好む。読みましたman date
が、内容を説明するのは少し難しいです。しかし、-d
私はWWWで多くの例を基本的に理解して選択したと思います。-s
私が読んだ多くの内容のいくつかは次のとおりです。
- https://stackoverflow.com/questions/46411970/add-x-days-to-a-pspecial-date-in-bash
- https://stackoverflow.com/questions/25619923/bash-convert-date-to-timestamp
- https://stackoverflow.com/questions/18706823/how-to-increment-a-date-in-a-bash-script
それで、現在は現在の日付に1年を加える方法を知っています。
myDatePlusOneYr=$(date -d "+365 days" '+%Y%m%d%H%M%S')
one year
期間(HHMMSS)なしで日付を追加できます。
myDate="20031005"
date -d "$myDate +365 day"
Mon Oct 4 00:00:00 GMT 2004
しかし、日付/時刻形式に年を追加する方法が見つかりませんでした。期間で2番目のオプションを使用しようとすると、次のエラーメッセージが表示されます。
date: invalid date `20031005000000 +365 day'
backtick
日付/時刻の開始と終了を確認しましたsingle quote
。エラーメッセージを解釈する方法がわかりません。アドバイスありがとうございます。
更新:次の質問に対する答えが見つかりましたinvalid date
。https://stackoverflow.com/questions/4197606/how-to-convert-yyyymmddhhmmss-to-a-date-reader-by-date
ベストアンサー1
過度に単純化したかもしれませんが、
% expr 20091005000000 + 10000000000
20101005000000