ここで必要なのは、年の範囲(1987〜2017)に基づいて6つの日付を生成するコマンドです。たとえば、
12/10/1987
30/04/1998
22/02/2014
17/08/2017
19/07/2011
14/05/2004
sed
どうすればいいですかgawk
?
ベストアンサー1
そしてdate
、shuf
そしてxargs
:
開始日と終了日を「1970-01-01 00:00:00 UTC以降の秒」に変換し、それを使用してshuf
この範囲内の任意の6つの値を印刷します。この結果をパイプしxargs
、値を目的の日付形式に変換します。
編集する:出力に2017年の日付を含めるには、2017-12-31 23:59:59
終了日に年-1()を追加する必要があります。shuf -i
開始と終了を含む乱数を生成します。
shuf -n6 -i$(date -d '1987-01-01' '+%s')-$(date -d '2017-01-01' '+%s')\
| xargs -I{} date -d '@{}' '+%d/%m/%Y'
出力例:
07/12/1988
22/04/2012
24/09/2012
27/08/2000
19/01/2008
21/10/1994