Kabuk izini açarak sorunu görebilirsiniz:
+ date -d 'Apr 1 2016 - 1 month' +%B
March
++ date -d 'Apr 1 2016'
+ date -d 'Fri Apr 1 00:00:00 EDT 2016 - 1 month' +%B
February
İç date
komutun çıktısını kullandığınızda, Nisan ayının en başındadır ve bir ay çıkarıldığında EST / EDT değişikliğine bağlı olarak süreksizlik yaşanır:
+ date -d 'Fri Apr 1 00:00:00 EDT 2016 - 1 month'
Mon Feb 29 23:00:00 EST 2016
Sonuçlarınız, elbette, yerel saat dilimi ayarlarınıza göre değişecektir. İzi açtığınızda saat dilimi gösterilir (benim durumumda EDT
).
Sonuçların farklı olmasının nedeni, ikinci durumda daha fazla bilgi vermiş olmanız date
, parametresini daha spesifik hale getirmeniz , yani günün belirli bir saatidir. İlk bölümde, bu belirtilmedi, date
görüntülenecek tarih / saatin nasıl belirleneceği hakkında daha fazla boşluk bırakıldı.
March