私はUNIXスクリプトを異なる日付で複数回実行する必要があります。スクリプトは、2017-01-01の場合は最初に実行し、次に2017-02-01の場合は実行する必要があります。私たちは毎月データをチェックしています。誰かが私を助けてくれますか?ありがとう。日付のUNIXループ
答えて
一般に反復のループにはfor
を使用できます。
for date in 2017-{01..12}-01; do
echo Processing data for $date
# Use $date in some way
done
または
for month in $(seq -w 1 12); do
date=2017-$month-01
echo Processing data for $date
# use $date in some way
done
のzsh、バッシュで動作する最初の、そして他の多くのシェルを、私は考えていない:あなたは以下のように、
{01..12}
または
seq -w 1 12
で数ヶ月のシーケンスを生成することができますそれらのいずれかのために動作することが保証されています。 2番目のコマンドは、
sh
のようなシェルで動作するはずです。
ありがとうございます。スクリプトを2日間実行する方法はありますか?例として、最初に1月1日と1月31日の間にすべてのレコードを見つけるためにスクリプトを実行する必要があります、そして、私はFeb1stと2月28日の間にレコードを見つける必要があります。私は、これが要件の理解を深めていく必要があると思います。 2つの日付の間にスクリプトをループする方法はありますか? – NewToUnix
長さの異なる月を扱う必要があるので、それはより複雑です。シェルには日付の固有の概念がないので、日付のリストを生成するために別の言語でプログラムを書く必要があるか、毎月の所要時間のルックアップテーブルが必要です'2017-04-31'や' 2017-02-29'のような無効な日付が与えられていれば、スクリプトをうまく失敗させる必要があります。入力要件を変更する方が簡単かもしれません。 –
これは私が達成しようとしているものです。複数の日付のステップをコピーするのではなく、以下のロジックをループの中に入れて、スリープさせる方法があります: '#!/ bin/bash'2017-03-01'のファイル do '2017年3月31日' でFILE1ため エコー$ファイル は 「の中のファイルを 行わ 睡眠10S を行って$ファイル$ FILE1 エコー "仕事" と$ FILE1 #runジョブをエコーします2017- 04-01 ' do ' 2017-04-30 '内のファイル1のエコー$ファイル do e cho $ file1 $ file $ file1の#runジョブ echo "ジョブ完了" done done' – NewToUnix
- 1. Django - 日付から日付 - UNIXからタイムスタンプへの日付
- 2. 日付のループ
- 3. 日付のループ
- 4. 年のUNIX日付スタンプの照会
- 5. MySQLのUnixタイムスタンプの日付形式
- 6. 日付コマンドを使用したUnixシェルスクリプティング
- 7. 非標準のUNIX日付からの日の抽出
- 8. のUnixで昨日の日付を取得 - KSHスクリプト
- 9. 無限ループ日付カウンター
- 10. Unixのループ変数
- 11. ループ内のsqlplus - unix
- 12. UNIXシェルスクリプトwhileループ
- 13. Laravel:日付でオブジェクトをフィルタリングする方法。日付はUNIXタイムスタンプですか?
- 14. 日付範囲の日付を挿入するループを作成
- 15. 日付差のためのループのネスト
- 16. UNIXサーバのスクリプトで現在の日付のファイルをチェックする
- 17. 複数の日付のSASループ
- 18. FacebookグラフAPIの日付をUNIXのタイムスタンプに変換する
- 19. パンダシリーズ:文字列の日付のUNIX秒エポック
- 20. UnixのタイムスタンプをGMTの日付に変換するPHP
- 21. hp unixの特定の日付に変更されたリストファイル
- 22. forループによる日付の配列
- 23. Python Whileループ日付の繰り返し
- 24. ループ日付Chart - PHP JSONのフォロワー
- 25. Pythonの増分日付をループする
- 26. echoコマンド文にUNIXコマンドの日付を追加するには
- 27. UNIXシェルスクリプトで日付の範囲を繰り返す
- 28. JavaのUnixタイムスタンプを日付に換算するOracle SQLクエリー
- 29. Gsonの日付形式でunix-timestampsを解析/出力する
- 30. スケジュールされたジョブでUnixサーバの日付を変更する
これは 'cron'ユーティリティのためのものです(あるいは特定のバージョンのLinuxを使用している場合は、システムタイマーユニット)。 –
ありがとうございます。私は予定された実行を探していません。しかし、スクリプトを今実行すると、Feb 1、Feb 1、March 1月5月1日まで実行する必要があります。入力値は毎月の最初の日とします。 – NewToUnix
ああ、私は見ると思う。 –