{"id":508,"date":"2021-07-23T16:21:32","date_gmt":"2021-07-23T08:21:32","guid":{"rendered":"http:\/\/149.28.72.201\/?p=508"},"modified":"2021-12-20T10:43:17","modified_gmt":"2021-12-20T02:43:17","slug":"bash-case","status":"publish","type":"post","link":"https:\/\/www.oceansource.cc\/?p=508","title":{"rendered":"22\u3001bash\u811a\u672c\u7f16\u7a0b\u4e4b\u4e94 case\u8bed\u53e5\u53ca\u811a\u672c\u9009\u9879\u8fdb\u9636"},"content":{"rendered":"\n<p>22.1&nbsp;\u9009\u62e9\u7ed3\u6784\uff1a<\/p>\n\n\n\n<p>1\u3001if\u8bed\u53e5<\/p>\n\n\n\n<p>\u5355\u5206\u652f\u3001<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;if:&nbsp;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;CONDITION;&nbsp;then<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;statement<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8230;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;fi<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\u53cc\u5206\u652f\u3001<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;CONDITION;&nbsp;then<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;statement<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8230;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;else<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;statement<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8230;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;fi<\/p>\n\n\n\n<p>\u591a\u5206\u652f<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;CONDITION1;&nbsp;then<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;statement<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8230;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;elif&nbsp;CONDITION2;&nbsp;then<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;statement<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8230;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;esle<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;statement<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8230;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;fi<\/p>\n\n\n\n<p>2\u3001case\u8bed\u53e5\uff1a\u9009\u62e9\u7ed3\u6784<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;SWITCH&nbsp;in&nbsp;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;value1)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;statement<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8230;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;value2)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;statement<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;..<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;*)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;statement<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8230;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;esac<\/p>\n\n\n\n<p>\u4f8b1<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;a-z<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;A-Z<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;0-9<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;[abc]<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\u8f93\u51fa\u4e0d\u540c\u7684\u5bf9\u5e94\u7ed3\u679c<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#!\/bin\/bash<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;$1&nbsp;in<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;[A-Z])<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;&#8220;upper&#8221;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;[a-z])<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;&#8220;lower&#8221;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;[0-9])<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;&#8220;number&#8221;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;*)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;&#8220;wrong&nbsp;input&#8221;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;esac<\/p>\n\n\n\n<p>\u4f8b2<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;\u53ea\u8bc6\u522b\u53c2\u6570start,stop,restart,status\u5176\u4e2d\u4e4b\u4e00<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#!\/bin\/bash<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;$1&nbsp;in<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;start)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;start;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;stop)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;stop;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;restart)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;restart;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;status)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;status;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;*)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;&#8220;The&nbsp;usage&nbsp;is&nbsp;`basename&nbsp;$0`&nbsp;{start|stop|restart|status}&#8221;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;esac<\/p>\n\n\n\n<p>\u4f8b3<\/p>\n\n\n\n<p>\u5199\u4e00\u4e2a\u811a\u672c\uff0c\u53ef\u4ee5\u63a5\u53d7\u9009\u9879\u53ca\u53c2\u6570\uff0c\u800c\u540e\u80fd\u83b7\u53d6\u6bcf\u4e00\u4e2a\u53c2\u6570\uff0c\u53ca\u9009\u9879\u7684\u53c2\u6570\uff0c\u5e76\u80fd\u6839\u636e\u9009\u9879\u505a\u51fa\u7279\u5b9a\u7684\u64cd\u4f5c\uff0c\u6bd4\u5982<\/p>\n\n\n\n<p>adminusers.sh&nbsp;&#8211;add&nbsp;tom.jerry&nbsp;&#8211;del&nbsp;tom,jerry&nbsp;-v|&#8211;verbose&nbsp;-h|&#8211;help<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#!\/bin\/bash<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#\u8c03\u8bd5\u4fe1\u606f<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;DEBUG=0<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;ADD=0<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;DEL=0<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;I&nbsp;in&nbsp;`seq&nbsp;0&nbsp;$#`;&nbsp;do<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;[&nbsp;$#&nbsp;-gt&nbsp;0&nbsp;];&nbsp;then<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;$1&nbsp;in<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-v|&#8211;verbose)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DEBUG=1<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shift&nbsp;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-h|&#8211;help)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;&#8220;Usage:&nbsp;`basename&nbsp;$0`&nbsp;&#8211;add&nbsp;USER_LIST&nbsp;&#8211;del&nbsp;USER_LIST&nbsp;-v|&#8211;verbose&nbsp;-h|&#8211;help&#8221;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exit&nbsp;0<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8211;add)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADD=1<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADDUSERS=$2<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shift&nbsp;2<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8211;del)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DEL=1<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DELUSERS=$2<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shift&nbsp;2<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;&#8220;Usage:&nbsp;`basename&nbsp;$0`&nbsp;&#8211;add&nbsp;USER_LIST&nbsp;&#8211;del&nbsp;USER_LIST&nbsp;-v|&#8211;verbose&nbsp;-h|&#8211;help&#8221;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exit&nbsp;7<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;esac<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fi<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;done<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;[&nbsp;$ADD&nbsp;-eq&nbsp;1&nbsp;];&nbsp;then<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;USER&nbsp;in&nbsp;`echo&nbsp;$ADDUSERS&nbsp;|&nbsp;sed&nbsp;&#8216;s@,@&nbsp;@g&#8217;`;&nbsp;do<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;id&nbsp;$USER&nbsp;&amp;&gt;&nbsp;\/dev\/null;&nbsp;then<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&nbsp;$DEBUG&nbsp;-eq&nbsp;1&nbsp;]&nbsp;&amp;&amp;&nbsp;echo&nbsp;&#8220;$USER&nbsp;exists.&#8221;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;useradd&nbsp;$USER<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&nbsp;$DEBUG&nbsp;-eq&nbsp;1&nbsp;]&nbsp;&amp;&amp;&nbsp;echo&nbsp;&#8220;Add&nbsp;user&nbsp;$USER&nbsp;finished.&#8221;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fi<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;done<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;fi<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;[&nbsp;$DEL&nbsp;-eq&nbsp;1&nbsp;];&nbsp;then<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;USER&nbsp;in&nbsp;`echo&nbsp;$DELUSERS&nbsp;|&nbsp;sed&nbsp;&#8216;s@,@&nbsp;@g&#8217;`;&nbsp;do<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;id&nbsp;$USER&nbsp;&amp;&gt;&nbsp;\/dev\/null;&nbsp;then<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;userdel&nbsp;-r&nbsp;$USER<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&nbsp;$DEBUG&nbsp;-eq&nbsp;1&nbsp;]&nbsp;&amp;&amp;&nbsp;echo&nbsp;&#8220;Delete&nbsp;$USER&nbsp;finished.&#8221;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&nbsp;$DEBUG&nbsp;-eq&nbsp;1&nbsp;]&nbsp;&amp;&amp;&nbsp;echo&nbsp;&#8220;$USER&nbsp;not&nbsp;exist.&#8221;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fi<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;done<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;fi<\/p>\n\n\n\n<p>\u4f8b4<\/p>\n\n\n\n<p>\u7ec3\u4e60\uff1a\u5199\u4e00\u4e2a\u811a\u672cshowlogged.sh\uff0c\u5176\u7528\u6cd5\u683c\u5f0f\u4e3a\uff1a<\/p>\n\n\n\n<p>showlogged.sh&nbsp;-v&nbsp;-c&nbsp;-h|&#8211;help<\/p>\n\n\n\n<p>\u5176\u4e2d\uff0c-h\u9009\u9879\u53ea\u80fd\u5355\u72ec\u4f7f\u7528\uff0c\u7528\u4e8e\u663e\u793a\u5e2e\u52a9\u4fe1\u606f\uff1b-c\u9009\u9879\u65f6\uff0c\u663e\u793a\u5f53\u524d\u7cfb\u7edf\u4e0a\u767b\u5f55\u7684\u6240\u6709\u7528\u6237\u6570\uff1b\u5982\u679c\u540c\u65f6\u4f7f\u7528\u4e86-v\u9009\u9879\uff0c\u5219\u65e2\u663e\u793a\u540c\u65f6\u767b\u5f55\u7684\u7528\u6237\u6570\uff0c\u53c8\u663e\u793a\u767b\u5f55\u7684\u7528\u6237\u7684\u76f8\u5173\u4fe1\u606f\uff1b\u5982<\/p>\n\n\n\n<p>Logged&nbsp;users:&nbsp;4.&nbsp;<\/p>\n\n\n\n<p>They&nbsp;are:<\/p>\n\n\n\n<p>root&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tty2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Feb&nbsp;18&nbsp;02:41<\/p>\n\n\n\n<p>root&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pts\/1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mar&nbsp;&nbsp;8&nbsp;08:36&nbsp;(172.16.100.177)<\/p>\n\n\n\n<p>root&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pts\/5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mar&nbsp;&nbsp;8&nbsp;07:56&nbsp;(172.16.100.177)<\/p>\n\n\n\n<p>hadoop&nbsp;&nbsp;&nbsp;pts\/6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mar&nbsp;&nbsp;8&nbsp;09:16&nbsp;(172.16.100.177)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#!\/bin\/bash<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;#<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;declare&nbsp;-i&nbsp;SHOWNUM=0<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;declare&nbsp;-i&nbsp;SHOWUSERS=0<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;I&nbsp;in&nbsp;`seq&nbsp;1&nbsp;$#`;&nbsp;do<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;[&nbsp;$#&nbsp;-gt&nbsp;0&nbsp;];&nbsp;then<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;$1&nbsp;in<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-h|&#8211;help)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;&#8220;Usage:&nbsp;`basename&nbsp;$0`&nbsp;-h|&#8211;help&nbsp;-c|&#8211;count&nbsp;-v|&#8211;verbose&#8221;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exit&nbsp;0&nbsp;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-v|&#8211;verbose)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;let&nbsp;SHOWUSERS=1<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shift&nbsp;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-c|&#8211;count)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;let&nbsp;SHOWNUM=1<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shift&nbsp;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*)<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;&#8220;Usage:&nbsp;`basename&nbsp;$0`&nbsp;-h|&#8211;help&nbsp;-c|&#8211;count&nbsp;-v|&#8211;verbose&#8221;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exit&nbsp;8&nbsp;;;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;esac<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fi<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;done<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;[&nbsp;$SHOWNUM&nbsp;-eq&nbsp;1&nbsp;];&nbsp;then<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;&#8220;Logged&nbsp;users:&nbsp;`who&nbsp;|&nbsp;wc&nbsp;-l`.&#8221;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;[&nbsp;$SHOWUSERS&nbsp;-eq&nbsp;1&nbsp;];&nbsp;then<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;&#8220;They&nbsp;are:&#8221;<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;who<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fi<\/p>\n\n\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;fi<\/p>\n","protected":false},"excerpt":{"rendered":"<p>22.1&nbsp;\u9009\u62e9\u7ed3\u6784\uff1a 1\u3001if\u8bed\u53e5 \u5355\u5206\u652f\u3001 &nbsp;&nbsp;&nbsp;&nbsp;if: [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-508","post","type-post","status-publish","format-standard","hentry","category-linux"],"aioseo_notices":[],"views":249,"_links":{"self":[{"href":"https:\/\/www.oceansource.cc\/index.php?rest_route=\/wp\/v2\/posts\/508","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.oceansource.cc\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.oceansource.cc\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.oceansource.cc\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.oceansource.cc\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=508"}],"version-history":[{"count":1,"href":"https:\/\/www.oceansource.cc\/index.php?rest_route=\/wp\/v2\/posts\/508\/revisions"}],"predecessor-version":[{"id":509,"href":"https:\/\/www.oceansource.cc\/index.php?rest_route=\/wp\/v2\/posts\/508\/revisions\/509"}],"wp:attachment":[{"href":"https:\/\/www.oceansource.cc\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=508"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.oceansource.cc\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=508"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.oceansource.cc\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=508"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}