Linux 間共通コマンド、プロセスの検索、プロセスの強制終了、jar パッケージの実行、jar スクリプト ファイルの実行、リモート デバッグ、マウント、時刻同期、タイム ゾーンの変更、ログの表示、リクエスト サービス インターフェイスのcurl コマンド、フォルダーとファイル関連の操作

Linux コマンドは日常の開発で頻繁に使用されますが、それでも忘れてしまったり、奇妙な問題に遭遇したりすることがあります。この記録を自分自身に思い出させるために使用してください~随時更新~

1. 検索プロセス

ポート番号 80 のプロセスを検索します。

netstat -nlp | grep :80

ポート 8181 のすべての PID プロセスを表示

sudo lsof -i tcp:8181

「java」でプロセスを検索

ps -ef | grep java

実行中のすべての jar を表示

ps aux | grep jar

2.プロセスを強制終了します

プロセスを強制終了するには、pid はプロセス番号です。
これを使用してsudo lsof -i tcp:8181、対応するポートの pid を見つけます。

kill -9 [pid]

3.jarを実行する

jarパッケージを直接起動する

nohup java -jar demo-0.0.1-SNAPSHOT.jar > run.log 2>&1 &

スクリプトを使用してjarを起動する

./run.sh demo-0.0.1-SNAPSHOT.jar

起動スクリプトのリファレンス:

#!/bin/bash

#jar包文件路径及名称(目录按照各自配置)
APP_NAME=mydemo.jar

#日志文件路径及名称(目录按照各自配置)
LOG_FILE=run.log

#查询进程,并杀掉当前jar/java程序
pid=`ps -ef|grep $APP_NAME | grep -v grep | awk '{print $2}'`
kill -9 $pid
echo "$pid进程终止成功"
sleep 2

#判断jar包文件是否存在,如果存在启动jar包,并时时查看启动日志
if test -e $APP_NAME
then
echo '文件存在,开始启动此程序...'

# 启动jar包,指向日志文件,2>&1 & 表示打开或指向同一个日志文件
nohup java -jar $APP_NAME > $LOG_FILE 2>&1 &

#实时查看启动日志(此处正在想办法启动成功后退出)
#tail -f $LOG_FILE


#输出启动成功(上面的查看日志没有退出,所以执行不了,可以去掉)
echo '$APP_NAME 启动ing...'

else
echo '$APP_NAME 文件不存在,请检查。'
fi

4. リモートデバッグ

IDEA で編集構成を選択し、「+」記号をクリックしてリモート JVM デバッグを選択し
ここに画像の説明を挿入します
、次のコマンドを使用してサーバーを起動します。ポート番号が対応している必要があることに注意してください。
–server.port=[エージェント ポート番号] が使用されている場合、リクエストはサーバーに送信され、対応するポート上で送信されます。

sudo java -jar -Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=[IP地址]:[端口号] demo-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev --server.port=[代理端口号]

5.curlコマンド(リクエストインターフェースを使用)

GETリクエスト

curl [URL]

POSTリクエスト

curl -X POST -d 'a=1&b=请求参数' [URL]

json形式のリクエスト

curl -H "Content-Type: application/json" -X POST -d '{"abc":123,"bcd":"请求参数"}' [URL]
curl -H "Content-Type: application/json" -X POST -d @test.json [URL]

6. ログを表示する

最新の xx.log ファイルを表示する

tail -f XX.log

最後の50行

tail -f  20 XX.log

5行目から

tail -f  +5 XX.log

キーワードで検索する

cat -n XX.log|grep "关键字"

キーワードに一致する行の前後100行

cat -n XX.log|grep -C 100 "关键字"

vim を使用し、/keyword を入力します。Enter を押して検索し、n を押して次へ進みます。

vim XX.log

一定期間内のログを表示する

sed -n '/起始时间/,/结束时间/p' XX.log

7. ファイル関連の操作

a フォルダーをコピーし、名前を b に変更します

cp -r a b

ファイルの詳細を表示する

ls -l [filename]

圧縮ファイル

zip -r filename.zip filename/

ファイルを解凍する

tar -zxvf filename.tar.gz
gzip filename

フォルダーをグローバルに検索する

find

現在のディレクトリの場所を表示する

pwd

8. 時間関連の操作

現在時刻を表示する

date -R

タイムゾーンを変更する

tzselect

ファイルを入力してタイムゾーンを変更し、次のコード行を追加しますzone = Asia/Shshanghai

vi /etc/sysconfig/clock

サーバー時刻同期、IP はタイムサーバーです

ntpdate [IP地址]

9. システム関連業務

ディスク容量の表示

df -h

パーティションを再読み込みする

partprobe

10.マウント

sudo mount -t cifs -o username=root,password=[密码],vers=1.0,sec=ntlm //[IP地址]/[挂载路径]/ /[本地挂载路径]

Ps.問題は解決しました

/bin/bash^M: 不正なインタープリター: そのようなファイルまたはディレクトリはありません

スクリプトは Windows で作成および編集されてから Linux システムにアップロードされるため、DOS 形式になります。ただし、Linux は UNIX 形式でしかスクリプトを実行できないため、認識されません。次のコマンドを使用してスクリプトを表示できますフォーマット

cat -A [scriptfile]

解決策:
vim を入力した後、set ff=unix を実行し、次に wq を実行して保存します。

おすすめ

転載: blog.csdn.net/weixin_44436677/article/details/131029715
おすすめ