bash bugüne bir gün eklemek nasıl?


24

Örneğin, 4 Ağustos 1993 tarihine sahibim ve 348 gün eklemek istiyorum, bunu nasıl yapabilirim?

Yanıtlar:


30

Sadece datekomutu -dseçeneği ile kullanın:

$ date -d "1983-08-04 348 days"
Tue Jul 17 00:00:00 BST 1984  

İsterseniz çıkış biçimini değiştirebilirsiniz:

$ date -d "1983-08-04 2 days" +%Y-%m-%d
1983-08-06                                           

1
OP'nin tarih biçimini de kullanabilirsiniz:date -d "4 August 1993 348 days" +"%d %B %Y"
sonraki bildirime kadar duraklatıldı.

1
%F full date; same as %Y-%m-%d
Erkek

12

Mac OS X'teki bash'ta bunu yapabilirsiniz:

date -j -v +348d -f "%Y-%m-%d" "1993-08-04" +%Y-%m-%d

Çıktı: 1994-07-18


1
Bir süredir bunu arıyorum. Takdir ediyorum. "348" sayısını bir bash betiğindeki bir değişkenle değiştirmek istedim. Bunu NEXT_DATE=$(date -j -v +$(( incrementDays ))d -f "%Y-%m-%d" "1993-08-04" +%Y-%m-%d)yapmak isteyen başka biri için bittim.
Ian G

1

İşte bunun biraz daha karmaşık bir kullanımı:

for i in `seq 1 5`;
do;
  date -d "2014-02-01 $i days" +%Y-%m-%d;
done;

veya borularla:

seq 1 5 | xargs -I {} date -d "2014-02-01 {} days" +%Y-%m-%d
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.