{"id":258,"date":"2009-07-03T16:13:34","date_gmt":"2009-07-03T15:13:34","guid":{"rendered":"http:\/\/www.steve-meier.de\/?p=258"},"modified":"2009-07-03T16:13:34","modified_gmt":"2009-07-03T15:13:34","slug":"cron-ubernehmen-sie","status":"publish","type":"post","link":"https:\/\/www.steve-meier.de\/?p=258","title":{"rendered":"Cron, \u00fcbernehmen sie&#8230;"},"content":{"rendered":"<p>Es ist mal wieder Zeit, etwas zum Thema Shell-Scripting zu schreiben.<\/p>\n<p><strong>Problem<\/strong>: Wie erkenne, ich ob ein Script von einem Benutzer oder durch Cron ausgef\u00fchrt wird ?<\/p>\n<p><strong>L\u00f6sung<\/strong>: Wie immer, mindestens 2 \ud83d\ude42<\/p>\n<p>Ansatz 1)<br \/>\nMan setz<code>t in den entsprechenden Crontabs eine Variable (z.B. ISCRON=1) und pr\u00fcft diese im Script. Das funktioniert nat\u00fcrlich nur, wenn man Kontrolle \u00fcber die Crontabs hat, was nicht immer der Fall ist.<\/p>\n<p>Ansatz 2)<br \/>\nMan schaut auf eine Variable, die Cron nicht setzt. $TERM ist so eine. Diese wird gesetzt, wenn Sessions auf der Console oder per Telnet\/SSH gestartet werden, Cron braucht sie aber schlicht nicht. Das sieht dann z.B. so aus:<\/p>\n<p><\/code>if [ &#8220;$TERM&#8221; = &#8220;&#8221; ]; then<br \/>\n  echo &#8220;Hallo Cron&#8221;<br \/>\nelse<br \/>\n  echo &#8220;Hallo Mensch&#8221;<br \/>\nfi<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Es ist mal wieder Zeit, etwas zum Thema Shell-Scripting zu schreiben. Problem: Wie erkenne, ich ob ein Script von einem Benutzer oder durch Cron ausgef\u00fchrt wird ? L\u00f6sung: Wie immer, mindestens 2 \ud83d\ude42&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"_links":{"self":[{"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=\/wp\/v2\/posts\/258"}],"collection":[{"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=258"}],"version-history":[{"count":4,"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=\/wp\/v2\/posts\/258\/revisions"}],"predecessor-version":[{"id":262,"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=\/wp\/v2\/posts\/258\/revisions\/262"}],"wp:attachment":[{"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=258"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=258"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.steve-meier.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=258"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}