シェルスクリプトを実行できる回数を制限するにはどうすればよいですか。私はshcを試しましたが、これには時間制限と使用制限がありません。シェルスクリプトの実行回数を制限する
-1
A
答えて
0
"実行カウンタ"としてファイルを使用し、実行中にそのファイルを読み取って、スクリプトが以前に実行された回数を確認することができます。
再起動後も「numOfRuns.txt」ファイルを保持したい場合は、ルートとして/ tmp以外のディレクトリを使用してください。
limitedScript.sh
ここには、最初にコメントが記載されていません。
#!/bin/bash
runCountFile="/tmp/numOfRuns.txt"
maxRuns=3
if [ -e "$runCountFile" ]; then
read value < "$runCountFile"
else
value=0
fi
if ((value >= maxRuns)); then
echo "Script has been run too many times"
exit
else
newValue=$((value + 1))
echo $newValue > "$runCountFile"
fi
-
#!/bin/bash
# limitedScript.sh: Demonstrates simple run-limiting through a file-based counter
runCountFile="/tmp/numOfRuns.txt" # the file to store the number of times the script has run
maxRuns=3 # maximum number of executions for this script
if [ -e "$runCountFile" ]; then # does the run counter file exist?
value=`cat $runCountFile` # read the value from the file
else
value=0 # the script has never run yet if the "run counter" file doesn't exist
fi
if ((value >= maxRuns)); then
echo "Script has been run too many times"
exit
else
newValue=$((value + 1))
echo $newValue > "$runCountFile" #update the "run counter" file
fi
OUTPUT:
[email protected]:/tmp# rm numOfRuns.txt
[email protected]:/tmp# ./limitedScript.sh
[email protected]:/tmp# ./limitedScript.sh
[email protected]:/tmp# ./limitedScript.sh
[email protected]:/tmp# ./limitedScript.sh
Script has been run too many times
関連する問題
- 1. Autoit - 実行回数を制限する
- 2. コマンドを複数回実行するシェルスクリプト
- 3. シェルスクリプトをcronjobで1回実行する
- 4. シェルスクリプトを通して実行されるプログラムのRAM使用を制限する
- 5. Azure関数 - パラレル実行の制限
- 6. Alamofire、セッションマネージャリトライ回数制限
- 7. HTML5/Javascript SSE制限回数
- 8. WiX MSIの実行を制限する
- 9. clojureでの関数の実行を制限する
- 10. アクターモデルパターン:同時実行中のアクターの数を制限する
- 11. SLURMで実行中のジョブの数を制限する
- 12. 制限数を持つ複数のスレッドで関数を実行
- 13. JavaScript関数の実行を1回だけ制御する
- 14. Azureストレージキューでのメッセージプロセスの試行回数の制限
- 15. JSP内の行数を制限する
- 16. 。エンティティ内の行数を制限する
- 17. リストビューの行数を制限する
- 18. ExtJS:GridPanelの行数を制限する
- 19. SQLiteデータベースの行数を制限する
- 20. ルームデータベースの行数を制限する
- 21. スケジュールされたスクリプトで実行の使用制限を回避する方法
- 22. 制限回数のpingホスト名毎秒
- 23. ソフトウェアトライアル - 使用回数の制限
- 24. スクリプトを実行する権限を制限する方法は?
- 25. APSchedulerを100回だけ実行するように制限できますか?
- 26. 無限回実行するループ
- 27. SQL Serverの行数、行数の制限
- 28. CSSの行数の制限
- 29. シェルスクリプトは、制限時間を設定し、
- 30. onEdit()の制限を回避する
あなたは何を意味するのですか?スクリプトが並行して呼び出されないようにしたいのですか、またはn回以上実行するとスクリプトの実行を拒否しますか? – choroba
はい、たとえば、スクリプトが3回実行されたとします.4回目に実行しないようにしてください。[email protected]に連絡してください。 –
代わりにスクリプトを実行しますか? – choroba