scでWindowsサービス名一覧

サービスの一覧。これWIN32だけらしい。答えは、最後。

C:\WINDOWS\system32>sc query | findstr SERVICE_NAME

だめなんは、以下でわかります。

C:\WINDOWS\system32>sc query | findstr 32
sc query type= service – Win32 サービスのみ列挙します

じゃ。

C:\WINDOWS\system32>sc query |findstr 64

これは無い。わー使えない!

起動していればtasklistコマンドでサービス名がわかる。

C:\WINDOWS\system32>tasklist /svc |findstr ssh
sshd.exe 10788 sshd

止まっているサービスの名前もわかればnetでもscでも起動、終了のどちらもできるだけど!!

C:\WINDOWS\system32>sc query |findstr ssd

C:\WINDOWS\system32>

と無いわ。

C:\WINDOWS\system32>net start sshd
OpenSSH SSH Server サービスを開始します.
OpenSSH SSH Server サービスは正常に開始されました。

C:\WINDOWS\system32>net stop sshd
OpenSSH SSH Server サービスは正常に停止されました。

とあるよね。これ私のノートパソコンの話しなんで、

spoolerはどのパソコンでもあるのでやってみて。

コマンドプロンプトでする。netの方がわかりやすいのでここではnetコマンドを使ってます。

C:\Windows\System32>net stop spooler
Print Spooler サービスを停止中です.
Print Spooler サービスは正常に停止されました。

C:\Windows\System32>net start spooler
Print Spooler サービスを開始します.
Print Spooler サービスは正常に開始されました。

ヘルプは、コマンドプロンプトでscを実行する。

C:\Windows\System32>sc
説明:
        SC はサービス コントロール マネージャーやサービスと通信するために使用
        するコマンド ライン プログラムです。
使用法:
        sc <サーバー> [コマンド] [サービス名] <オプション 1> <オプション 2>...


        オプションの <サーバー> は "\\サーバー名" の形式です。
        「sc [コマンド]」と入力するとコマンドの詳細なヘルプが表示されます。
        コマンド一覧:
          query-----------サービスの状態を照会したりサービスの種類ごと
                          に状態を列挙したりします。
          queryex---------拡張されたサービスの状態を照会したりサービス
                          の種類ごとに状態を列挙したりします。
          start-----------サービスを開始します。
          pause-----------サービスに PAUSE 制御要求を送信します。
          interrogate-----サービスに INTERROGATE 制御要求を送信します。
          continue--------サービスに CONTINUE 制御要求を送信します。
          stop------------サービスに STOP 要求を送信します。
          config----------サービスの構成を変更します (恒久的)。
          description-----サービスの説明を変更します。
          failure---------エラー発生時のサービスの動作を変更します。
          failureflag-----サービスの障害動作フラグを変更します。
          sidtype---------サービスのサービス SID の種類を変更します。
          privs-----------サービスの必要な特権を変更します。
          managedaccount--サービス アカウントのパスワードを LSA で管理された
                          パスワードとマークするようにサービスを変更します。
          qc--------------サービスの構成情報を照会します。
          qdescription----サービスの説明を照会します。
          qfailure--------エラー発生時のサービスの動作を照会します。
          qfailureflag----サービスの障害動作フラグを照会します。
          qsidtype--------サービスのサービス SID の種類を照会します。
          qprivs----------サービスの必要な特権を照会します。
          qtriggerinfo----サービスのトリガー パラメーターを照会します。
          qpreferrednode--サービスの優先 NUMA ノードを照会します。
          qmanagedaccount-パスワードが LSA で管理されたアカウントを
                         サービスで使用するかどうかを照会します。
          qprotection-----サービスのプロセス保護レベルを照会します。
          quserservice----ユーザー サービス テンプレートのローカル インスタンスを照会します。
          delete----------レジストリからサービスを削除します。
          create----------サービスを作成します (レジストリに追加します)。
          control---------サービスに CONTROL コードを送信します。
          sdshow----------サービスのセキュリティ記述子を表示します。
          sdset-----------サービスのセキュリティ記述子を設定します。
          showsid---------任意の名前に対応するサービス SID 文字列を表示します。
          triggerinfo-----サービスのトリガー パラメーターを構成します。
          preferrednode---サービスの優先 NUMA ノードを設定します。
          GetDisplayName--サービスの DisplayName を取得します。
          GetKeyName------サービスの ServiceKeyName を取得します。
          EnumDepend------サービスの依存関係を列挙します。

        次のコマンドはサービス名を指定しません:
        sc <サーバー> <コマンド> <オプション>
          boot------------(ok | bad) 最後に行われたブートを前回正常起動時
                          の構成として保存するかどうかを示します。
          Lock------------サービス データベースをロックします。
          QueryLock-------SCManager データベースの LockStatus を照会します。
例:
        sc start MyService


QUERY と QUERYEX のオプション:
        クエリ コマンドにサービス名が続く場合、サービスの状態が戻されます。
        この場合、それ以上のオプションは適用されません。クエリ コマンドに
        オプションがない場合やまたは以下に一覧に表示されているオプションが
        続く場合は、サービスが列挙されます。
    type=    列挙するサービスの種類 (driver、service、user service、all)
             (既定 = service)
    state=   列挙するサービスの状態 (inactive、all)
             (既定 = active)
    bufsize= 列挙バッファーのサイズ (バイト)
             (既定 = 4096)
    ri=      列挙の開始を指定するための再開インデックス番号
             (既定 = 0)
    group=   列挙するサービス グループ
             (既定 = all groups)

構文の例
sc query                - アクティブなサービス ドライバーの状態を列挙します
sc query eventlog      - イベントログ サービスの状態を表示します
sc queryex eventlog    - イベントログ サービスの拡張状態を表示します
sc query type= driver   - アクティブなドライバーのみ列挙します
sc query type= service  - Win32 サービスのみ列挙します       <<<<<<わお
sc query state= all     - サービスとドライバーをすべて列挙します  <<<<これ!!
sc query bufsize= 50    - 50 バイトのバッファーで列挙します
sc query ri= 14         - 再開インデックスを = 14 にして列挙します
sc queryex group= ""    - グループにないアクティブなサービスを列挙します
sc query type= interact - 対話型サービスをすべて列挙します
sc query type= driver group= NDIS     - NDIS ドライバーをすべて列挙します


C:\Windows\System32>

答えは

sc query state=all | findstr SERVICE_NAME

state=allなんです。

C:\WINDOWS\system32>sc query state=all|findstr ssh
SERVICE_NAME: ssh-agent
SERVICE_NAME: sshd

見つけてますね。OK

sc query state=all | findstr 探したいサービス名の一部

SikuliXのプログラム

バッファローのブロードバンドルータの設定を例にします。

Yamahaのルータはコマンドが使えるけど、安いルータはブラウザで設定するしかない。もしかして、安いルータもLinuxなので裏技ありますかね?

ブラウザの操作を自動化したくて、SikuliXを使った。

キーボード操作は、typeを使う。

  • ファイル名を指定して実行は、Windowsキー+rはtype(“”,Key.WIN)
  • 貼り付けは、paste(“chrome”)。結果的にchromeを入力と同等。
  • 改行は、改行コードを入れる。type(“\n”)
  • Chromeのアドレスバーは、type(“l”,Key.CTRL)。ここを参照。
  • passという文字列を入力、type(“pass”)

ある画像があるかどうか待つ、exists(画像,待つ秒数)

ある画像をクリックする、click(画像)

秒数待つ、wait(秒数)

if 条件文:
TAB文字 コマンド
else:
TAB文字 コマンド
空白文字が左に無いとIf文を抜けることになる。

Regionはある範囲の変数として登録できる。ここではr1変数

withを使って範囲内の処理にする

with 範囲変数:
TABキー コマンド

か以下のように使う。

もし、riのレンジ(範囲)にぺけ✕マークが無かったらエラーになる。その場合は、

if ri.exists(✕画像)を使う。画像があるかないかで実行を分岐します。これ便利。エラー防止できるね。待ち時間を追加もできる。ri.exists(画像,秒数)。当然、ディスクトップ全体exists(画像,秒数)も使えます。

コピペすると画像部分はファイル名になります。

type("r", Key.WIN)
paste("chrome")
type("\n")
wait(1)
type("l",Key.CTRL)
paste("192.168.11.1")
type("\n")

exists("1588775045755.png",8)
click("1588775045755.png")
type("pass")
type("\n")
exists("1588776243359.png",15)
click("1588776243359.png")
wait(8)
exists("1588776486229.png",3)
click("1588776486229.png")
exists("1588776523376.png",2)
click("1588776523376.png")
wait(2)
if exists("1588776582583.png",2):
    click("1588776582583.png")
else:
    click("1588776773718.png")

wait(11)
click("1588776816413.png")

r1=Region(1364,0,236,43)
r1.click("1588776847092.png")


ssh 「Secure Shell」

セキュア シェル。Windowsで言えばShellシェルとはcmd.exeやエクスプローラーかな。

暗号化したコマンド。暗号化したトンネル(パイプ)を作ったり、scpでコピーもできるし多機能です。

コマンドで使うのでキーボード大好きな人向き。

もともと、マウスで操作するのは自動化や繰り返し処理には向かない?

私はキーボード操作が好きです。

さて、

sshの前にtelnetを使っているとあーsshねとなると思いますが。Windowsでは使うことないでしょ。もともとsshはUNIXで一般的につかわれています。

ここでは、Windows10で使えるということでやってみます。

sshクライアントとsshdサーバーの2つともWindows10では設定するだけですぐに使える。

コマンドプロンプトでssh localhostまたはssh 127.0.0.1で自分のサーバーに接続する。

岡山仕様のガス切断用吹管?

岡山仕様って前に書いたかな?。神戸あたりまで使っているらしい。溶材屋さんに頼むと岡山仕様の22山が入ってくる。

モノタロウで買った吹管にこの切断火口は付かない。付くようで付かない。

Hが付く

吹管にも22山と書いてある。

大阪より東、広島より西の皆様。22山って持ってますか?。コメント下さい。

話は締め方、これは全国共通。

締める時は真ん中のナットで締めて、かしめる感じでガスが漏れるのを防ぐ。次図は、モンキーで見えないがモンキースパナがくわえているのがその真中のナット。全部で3つのナットが火口にある。

二重のナット式?で、上図の上側の、モンキーの上に見えるナットを締めて固定です。一番下(上の図)のナットはいじらない。火口の同心円の真円がずれるから。

SheetWorksで球の展開

きっちりすれば実用的な展開図が描けると思うが、こんなに簡単にしても球を何とか展開するってすごいです。アマダさん。本社は神奈川の会社。

SolidWorksではありません。SheetWorksです。olidとheetが違います。SolidWorksでボディを作ってSheetWorksで展開しました。

SheetWorksがあればAP100の古いCADを使わなくてもSheetWorksで作った板金部品をそのまま渡せます。

感染者数減少?検査数と正比例しているしね?

東洋経済新報社 コロナ」でヒットします。

感染者数が減ってきている?ように見ええる。よかった?

感染者数の減少はこれなら納得できます。

ということは、検査数に感染者数は比例するということか。ニュースにもなってます。だから感染者数は関係なくすでに一定数の陽性がいるということかな?でも県ごとの感染者数に比例してるんでしょうね。岡山県より東京都の方が感染者の割合は多いんでしょうね。

院内感染が多いのが気になる。院内で防護できないなら一般はどうすりゃいい。

危機感はホッといても出てくる。

出勤、帰宅途中で触ったら、スーパーで買った容器を触ってもゲームのように手洗い、アルコール消毒ですね。

アルコールの噴霧を吸うのは肺には良くない。車内での噴霧は窓を開け、噴霧は風通しを良い所でしましょう。

家のパソコンを会社からVNCでリモート操作

会社のフィルターでネットがつかえん」の追加の設定です。

フリーのVNCは、リモートディスクトップっていうんかな。遠くのパソコンのディスクトップ画面を画面として操作できます。

Team Viewerも使えるが、フリーのVNCも使えます。ただ、VNCは通信経路が丸見え?だったと。

でも

sshでトンネリング(暗号化した通信のパイプ/トンネルのような感じ)しているので大丈夫。ということでVNCを使います。

家のノートパソコンにVNCを検索して、ノートパソコンにダウンロード、インストールします。

サービスとして動かしてから。家のノートパソコンの画面右下

設定画面をだす

パスワードの設定です。なんでもいいです。トンネルの中ですから簡単なパスワードにしよう。1文字でも大丈夫。何かエラーぽいのがでるけど。

パスワードの設定

動作確認は家のノートパソコンでlocalhostか127.0.0.1で確認できる。

会社のPuttyのTunnelsの設定の投稿に追加します。

追加したら、いったんsshの接続を切る(Puttyを閉じる)。再度、Puttyを起動、sshで接続してから、VNCViewerを起動し、127.0.0.1:11111かlocalhost:11111で家のノートパソコンに接続する。

あ、会社のパソコンにVNCViewerがいる。

パスワードは、UltraVNC Server Property Pageで設定したパスワードです。