2017-05-08 9 views
2

私は、その特定のために失敗したログのpathを印刷するこのスクリプトで印刷ファイルのパス前日と翌日

#!/bin/bash 

TIMESTAMP=`date "+%Y-%m-%d"` 
path=/home/$USER/logging/${TIMESTAMP}/status/${TIMESTAMP}.fail_log 

echo filePath=$path 

以下のように私は、シェルスクリプトを持っていますタイムスタンプ。

今、パスを印刷するためにechoを取得することができます。

timestampの前後の日を印刷するにはどうすればよいですか?それは可能ですか?

どうすればいいですか?1行で記述できますか?それはできますか?

+0

はあなたを持っています関連する[その他の質問](http://stackoverflow.com/questions/15374752/get-yesterdays-date-in-bash-on-linux-dst-safe)を使用して実際に検索しましたか? – t0mm13b

+0

'date --date =" yesterday "'、 'date --date =" tomorrow "' – gaganshera

答えて

1

明日のデータを取得するには、あなたが行うことができます:

date -d '+1 day' "+%Y-%m-%d" 

を昨日のデータを取得するには、あなたが行うことができます:

date -d '-1 day' "+%Y-%m-%d" 

をスクリプトでこれを使用するには:

#!/bin/bash 

nextDate=$(date -d '+1 day' "+%Y-%m-%d") 
prevDate=$(date -d '-1 day' "+%Y-%m-%d") 

nextDatePath=/home/$USER/logging/${TIMESTAMP}/status/${nextDate}.fail_log 

prevDatePath=/home/$USER/logging/${TIMESTAMP}/status/${prevDate}.fail_log 
関連する問題