私のプログラムは「yyyymmdd」の形式の日付を受け入れますが、それが平日であるかどうかを確認する方法がわかりません。pplが$(date +%u) -gt 5
または"$(date +%a)" in Sat|Sun echo "weekend"
他のスレッドで使用しているのを見たことがありますが、その${date}はTue Nov 22 14:16:35 EST 2011
私が推測するようなものです。では、「yyyymmdd」を$ {date}形式に変換する良い方法はありますか?または、「yyyymmdd」が平日かどうかを確認する簡単な方法はありますか?どんな言語でも構いません。ありがとう。
1506 次
2 に答える
2
任意の言語? Java ではSimpleDateFormat
、または Joda Time のDateTimeFormatter
. C# では、DateTime.ParseExact
またはNoda TimeのLocalDatePattern
. これらすべての場合において、結果は曜日などを求めることができる値です。
datetime.strptime
Pythonでは、たとえば、あなたが欲しいと思います
date = datetime.strptime(text, "%Y%m%d")
day = date.weekday()
if day < 5 # Monday(0) to Friday(4)
# Do something here
ただし、これは完全にテストされていません...
于 2011-11-22T19:28:01.123 に答える
0
通常、型付き言語 (Java、C#、Python など) では、1) 「時刻」を言語固有の「時刻日付」型に初期化し、2) 何らかのメソッドから「曜日」を取得します。その時の。
Bourne シェルを使用しているようです。これは型付けされていない言語であり、ネイティブの日付/時刻関数はありません。
考えられる解決策の 1 つを次に示します。
http://unix.ittoolbox.com/groups/technical-functional/shellscript-l/day-of-week-bash-script-2018531
(Linux) Bourne シェルで実行できる、時間/タイミングに関連するいくつかのことを次に示します。
于 2011-11-22T19:34:08.957 に答える