ホームページ  >  記事  >  運用・保守  >  Wind および Linux でのポート占有のチェックと強制終了の簡単な分析 (コード付き)

Wind および Linux でのポート占有のチェックと強制終了の簡単な分析 (コード付き)

奋力向前
奋力向前転載
2021-09-03 09:46:094538ブラウズ

前回の記事「MacOSの一般的なターミナルコマンドを解説した記事(コード付き)」では、MacOSの一般的なターミナルコマンドを解説した記事について学びました。次の記事では、Wind と Linux でポート占有を確認して強制終了する方法を説明します。

Wind および Linux でのポート占有のチェックと強制終了の簡単な分析 (コード付き)

ポート占有と Kill (ウィンドウと Linux)

Windows の使用

window netstat

  • -a は、すべての接続ポートとリスニング ポートを表示します。

  • -n アドレスとポート番号を数値形式で表示します。

  • #-o 各接続に関連付けられた所有プロセス ID を表示します。

すべてのポート占有を表示

netstat  -ano

占有ポート 3306

netstat -ano | findstr 3306
## に対応する PID を表示

#指定されたポート 3306 の PID プロセスを表示します。
tasklist | findstr 3306

プロセスを終了します。

強制的に (/F パラメーター) ですべてのプロセスを強制終了します。 pid 12345、子プロセス (/T パラメーター) を含む:

taskkill /T /F /PID 12345

LinuxUse

Use netstatcommand

-t (tcp)表示のみ tcp 関連オプション

-u (ucp)表示のみ ucp 関連オプション -nエイリアスの表示を拒否し、表示できるすべての数値を数値に変換します

-l Listen# にのみリストします## (listening) サービスのステータス

-p

関連するリンクを確立するプログラムの名前を表示します

現在使用されているすべてのポートを表示します

netstat   -nultp

特定のポートの使用状況を確認する

##
netstat   -anp |grep 3306

#lsof

コマンドを使用する

#デフォルト : オプションなし、lsof

はアクティブなプロセスの開いているすべてのファイルをリストします
  • 組み合わせ : ## のように、オプションを組み合わせることができます。 #-abc、ただし、どのオプションに引数が必要か注意してください

  • ##-a : 結果は AND 演算されます (OR 演算ではありません)

  • -l : ユーザー名ではなく出力に userID

    を表示します
  • #-h : ヘルプを表示

  • -t : プロセスのみを取得ID

  • -U : UNIX

    ソケット アドレスを取得します
  • -F : 他のコマンドの出力結果をフォーマットします。 -F pcfn

    (プロセス
  • id
  • 、コマンド名、ファイル記述子、ファイル名、null で終了)

    # など、さまざまな方法でフォーマットできます。 ##<pre class="brush:php;toolbar:false">lsof -i:3306</pre>一般的に使用される

  • ##lsof abc.txt
開いているファイルを表示します

abc.txt 処理

  • #lsof -i :22

    ポートでどのようなプログラムが実行されているかを知る#22

  • # #lsof -c abc
  • abc プロセスによって現在開かれているファイルを表示します

  • lsof -g gid
  • 所有権を表示します

    gid プロセス ステータス

  • #lsof d /usr/local/
  • ディレクトリ内でプロセスによって開かれたファイルを表示します。

    ##lsof D /usr/local/ 上記と同じですが、ディレクトリ配下のディレクトリが検索されるため、時間がかかります

  • lsof -d 4
  • 表示

    4

  • lsof -i の処理として fd

    を使用して、条件を満たすプロセスのステータス
  • lsof -p 12 プロセス番号 12# のプロセスによってどのファイルが開かれているかを確認します。

  • # #lsof |-r [t]

    lsof を繰り返し実行するように制御します。デフォルトは

    15s
  • refresh
  • ## です。

    #lsof -r, lsof は、割り込み信号が受信されるまで永久に実行を続けます

  • lsof r, lsof ファイルが表示されなくなるまで実行を続けますlsof -s

    開いているファイルのサイズをリストします。サイズがない場合は空白のままにします
  • lsof -u username

    開いているファイルを
  • UID でリストする
  • #使用
  • ps

    command

    コマンド パラメータ:
  • #a すべてのプロセスを表示

  • #-a
同様に表示 端末配下のすべてのプログラム

-A

すべてのプロセスを表示

  • c プロセスの実際の名前を表示します

  • -N 選択を反転します

  • # -eは "-A

    "
  • e

    環境変数の表示
  • f # に等しい##プログラム間の関係を表示

  • -H ツリー構造を表示

  • r

    現在の端末のプロセスを表示

  • T

    現在の端末のすべてのプログラムを表示

  • ##u
  • 指定したユーザーのすべてのプロセス

  • -au
  • 詳細情報を表示

  • -aux
  • 他のユーザーが含まれるすべての旅行を表示

  • -C99a2c3ea6fd7e6f38f79ffc1b9e66846 列出指定命令的状况

  • --lines1dcc53fc8cc7b2478796660caa67152b 每页显示的行数

  • --width43fcd4448ba0fb0354190e42ef7c7dd3 每页显示的字符数

  • --help 显示帮助信息

  • --version 显示版本显示

查找特定进程

ps -ef|grep ssh

输出:

chuchur@linux:~/share$ ps -ef|grep bash
chuchur        9448  79650  0 06:05 pts/4    00:00:00 grep --color=auto bash
chuchur       79650  79575  0 03:49 pts/4    00:00:00 bash

通过服务名字查找PID

查找 nginxpython 占用情况

ps aux | egrep &#39;(nginx|python)&#39;

输出:

root         951  0.0  0.3 425268 27680 ?        Ssl   2020   9:48 /usr/libexec/platform-python -Es /usr/sbin/tuned -l -P
root      212828  0.0  0.1 135300 13924 ?        Ss    2020   0:00 nginx: master process /usr/sbin/nginx
root     2488443  0.0  0.1 164676 14892 ?        S    Mar06   0:00 nginx: worker process

结束进程

kill命令参数

  • -1 (HUP):重新加载进程。

  • -9 (KILL):杀死一个进程。

  • -15 (TERM):正常停止一个进程。

  • -KILL 强制杀死进程

kill -9 65300 #彻底干掉pid为65530的进程

kill -9 $(ps -ef | grep guest) #干掉guest 用户进程
#or
kill -u guest

推荐学习:windows教程

以上がWind および Linux でのポート占有のチェックと強制終了の簡単な分析 (コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はchuchur.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。