よく使うLinuxコマンドのまとめ

よく使うLinuxコマンドのまとめ

私は2年間運用保守に携わり、多くのコマンドを使用しました。特定のLinuxコマンドを習得すると、どれだけ効率が向上するかを深く実感しました。簡単な例を挙げると、研究開発を行った後、データを実行する必要があることがよくあります。結果データの処理については、当社の製品担当者は一般的に Excel を使用して統計を行い、データを Excel にコピーしてから、データを分離して並べ替えることに慣れています...最終的に、いくつかの簡単な結論が導き出されます。同じ操作を瞬く間に完了するには、cat、sort、uniq、awk、grep コマンドだけが必要です。

ここでは、過去数年間の仕事で使用したコマンドのいくつかをまとめます。もちろん、vim cd ls mv cp などの簡単なコマンドについては触れません。これらのコマンドを知らない場合は、まずそれらを学ぶことをお勧めします。ここには多くのコマンドがありますが、ここではよく使用するいくつかのパラメータを簡単にリストします。実際、私はこれらのコマンドをあまり頻繁に使用しません。この記事では、このようなツールがあることを皆さんに知ってもらいたいだけです。ただし、具体的な使用方法について詳しく知りたい場合は、マニュアルを確認することをお勧めします。比較コマンドの参考資料もいくつかリストしました。

サーバー実行ステータス関連コマンド

追伸

システム プロセス スレッドを表示するには、通常、このコマンドを使用してプロセス pid を表示し、その pid を使用してさらに詳細な調査を行います。

基本的な使い方

ps -auxですべてのプロセスを表示する
ps -T -p ${pid}プロセスのスレッドを表示する

参考文献
重要な Linux ps コマンド 10 個の使い方

pstree

システム プロセス ツリーを表示することで、ツリー構造を使用して各プロセス間の関係を識別できます。

基本的な使い方
pstree

トップ

システム プロセス スレッドの実行状態、パッケージ リソースの使用状況、システム負荷などを確認します。私の使用法は、サーバーの負荷が非常に高いかどうかを確認し、どの特定のプロセスとどのスレッドがより多くの CPU を占有しているかを確認することです。

基本的な使い方
上部にはすべてのスレッドのロード情報がリストされます
top -Hはすべてのスレッドの負荷情報を一覧表示します
top -H -p ${pid} は、特定の pid の下にあるすべてのスレッドの負荷情報を一覧表示します。

無料

メモリと使用量を確認する

基本的な使い方
free

ファイル操作関連


私はいつもこのコマンドを使用して設定ファイルやログファイルを表示しますが、注意すべき点が 1 つあります。cat コマンドはファイル全体をターミナルに出力します。ファイルの内容が非常に長い場合は、grep を使用してフィルタリングするか、less コマンドまたは more コマンドを直接使用することをお勧めします。

基本的な使い方
cat file.txt

しっぽ
ファイルの末尾を表示するか、標準出力の末尾を表示します。デフォルト値は 10 行です。-n パラメータを使用して、出力する行数を指定できます。

基本的な使い方
tail -n 100 file.txtは最後の100行を出力します。
tail -f file.txt ファイルが追加されると、新しいコンテンツが継続的に出力されます。通常、リアルタイムのログを表示するために使用されます。


tail コマンドと非常に似ていますが、head はヘッダー コンテンツの出力に使用されます。個人的には、head は tail コマンドほど使用されていないように感じます。

基本的な使い方
head -n 100 file.txtは最初の100行を出力します。

もっと

ファイルの表示にも使用されますが、more コマンドは 1 画面分のコンテンツのみを読み込み、スクロールダウンできます。読み込むコンテンツが少ないため、cat よりもはるかに高速です。

基本的な使い方
more file.txt

少ない
more と非常に似ていますが、上下に反転できます。less と more には less で十分だと思います。more を完全に削除できます。

基本的な使い方
less file.txt

グレップ
これは私が頻繁に使用するコマンドです。特にトラブルシューティングを行うときは、大量のデータから必要なものを grep を使用してフィルタリングする必要があります。 grep は正規表現のマッチングもサポートしています。

基本的な使い方
grep "abc" ファイルは、ファイルから abc を含む行をフィルタリングします。

awk

冒頭で述べたように、このコマンドは私が最もよく使用するコマンドの 1 つです。たとえば、ファイルに複数の列がある場合、awk を使用して特定の列を出力したり、簡単な統計の合計や平均を計算したり、簡単なデータ フォーマットを実行したりできます。

基本的な使い方
cat data | awk '{print $1,$3,$5}' は、列 1、3、5 を出力します。添え字は 1 から始まることに注意してください。
cat data | awk '{ sum += $1 } END { print sum }' は最初の列を合計します
cat data | awk -F'\t' '{print $1,$3}' 各データ行をタブで列に分割し、1~3列を出力します

参考文献: Ruan Yifeng awk 入門

選別

標準コンテンツを並べ替えます。

基本的な使い方
cat file|sort ファイル内のデータをソートします。辞書順にソートされることに注意してください。値でソートする場合は、-n パラメータを追加する必要があります。
cat file|sort -k2 -n -r 2番目の列の値で逆順に並べ替えます。-kは列を指定し、-rは逆順を意味します。

ユニーク

ソートされたコンテンツの重複を排除します。重複を排除するのは隣接するコンテンツと同一のコンテンツのみなので、グローバルに重複を排除したい場合は、まずソートを使用する必要があります。

基本的な使い方
cat file|sort|uniq ファイル内のファイルをソートし、重複を削除します
cat file|sort|uniq -c ファイル内のファイルをソートし、重複を削除し、各行の出現回数を出力します。

トイレ

私はいつも wc を使用して行数をカウントします。実際、wc は行数をカウントできるだけでなく、単語数や文字数もカウントできます。

基本的な使い方
wc -l file はファイル内の行数を数えます
wc -w ファイル 単語数
wc -c ファイル バイト数
wc -m ファイルの文字数

参考文献
https://www.jb51.net/LINUXjishu/62056.html

sed

平行

Linux のコマンドのほとんどは単一プロセスですが、このコマンドを使用すると、他のコマンドを複数のプロセスで実行できます。

参考文献
15分でわかるGNU parallel入門

SCP-10000-1

従来、多数のマシンを運用・保守する場合、設定ファイルを一括で変更する必要がありました。これらはすべて 1 台のマシンで実行され、その後 scp スクリプトを使用して他のマシンに配布されるため、効率が大幅に向上しました。

基本的な使い方
scp aaa.txt [email protected]:/tmp/ は、現在のディレクトリにある aaa.txt ファイルを、192.168.1.3 のテスト アカウントを通じて /tmp ディレクトリに置きます。
scp [email protected]:/tmp/aaa.txt 。前のものと逆です

ディスクとIO

デュ

ディレクトリのサイズを表示する

基本的な使い方
du -h --max-depth=1 は最も深いレベルのディレクトリを出力し、ファイルサイズを1K 234M 2Gなどの人間が読める形式で表示します。

df

ディスクサイズと使用量を確認する

基本的な使い方
df -h 各パーティションのサイズと使用状況を表示します

iostat

ディスクIOステータスを確認する

iotop

トップディレクトリと同様に、各プロセスの IO ステータスをリアルタイムで表示できます。

探す

ファイル名、ファイルの日付、またはファイル サイズでファイルを検索します。非常に強力です。 以前、ディスクがいっぱいになると、サーバー上のディレクトリにある 1G を超えるファイル、2 日以上前のファイル、*.log というファイル名のファイルを強制的に削除するサーバーがありました。これは、find と xargs コマンドを使用して実行されました。

基本的な使い方

find /home/test -iname "test.txt /home/test/ にある test.txt という名前のファイルを検索します。ワイルドカードもサポートしています。
find /home/test -isize +100M /home/test 内の 100M を超えるファイルを検索します

参考文献
ウィキペディア UNIX 検索

見つける

特定のファイルを検索する場合、locate コマンドは特定のディレクトリではなくデータベース /var/lib/mlocate/mlocate.db を検索するため、find -name よりもはるかに高速です。このデータベースは cron を通じて定期的に更新されるため、新しく作成されたファイルを取得できない可能性があります。

基本的な使い方
locate a.txt は、a.txt の場所を検索します。システム内に複数の a.txt ファイルがある場合は、すべて表示されます。


ツリーディレクトリ構造を見ることができます。

基本的な使い方
tree -L 2 はツリー構造の2つのレベルのみを表示します

ネットワーク

ピン

ネットワークにアクセスできるかどうかを確認する

基本的な使い方
ping www.baidu.com

いいえ

netcat を使用すると、リモート ポートが開いているかどうかを確認できます。非常に強力ですが、あまり使用しません。

基本的な使い方
nc -z xindoo.me 443 は、サーバーのポート 443 が開いているかどうかを確認します (もちろん開いています)

参考文献
Linux nc コマンドの紹介

ルート

ローカルルーティングテーブルの表示と操作

基本的な使い方
ルートはローカルルーティングテーブルをリストします

参考文献
ルートコマンド

ネットスタット

マシンのネットワーク ステータスをチェックして、ポートの占有状況とネットワーク リンク ステータスを確認します。

基本的な使い方
netstat -antp

トレースルート

リクエストがターゲット サーバーに渡されるすべてのルーティング ノードを表示します。通常は、ネットワークの問題のトラブルシューティングに使用されます。

基本的な使い方
traceroute www.baidu.com

参考文献

netstat コマンド

イフトップ

リアルタイムのネットワークIOステータスを表示する

lsof

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

掘る

ドメイン名情報を確認します。以前運用保守をしていたとき、ドメイン名解決の変更が有効になっているかどうかを確認する必要がよくありました。一般的にドメイン名は複数の IP に -A されるため、ping コマンドでは 1 つの IP しか表示されません。このとき、dig を使用してドメイン名解決情報を表示します。

基本的な使い方
dig www.baidu.com

参考文献
digコマンドの紹介

カール

http リクエストを開始します。このコマンドは通常、サービスに正常にアクセスできるかどうかを確認するために使用します。HTML ソースコードを取得する機能があります。

基本的な使い方
カール www.baidu.com
curl -I www.baidu.com baidu.com のリクエスト ヘッダーを取得します。

参考文献
curl の使い方 (英語)

wget

インターネットからファイルをダウンロードするには、基本的にダウンロード ツールのコマンド ライン バージョンがあります。

基本的な使い方
wget xindoo.me/test.txt サーバー上のtest.txtファイルをローカルコンピュータにダウンロードします

他の

yum|apt インストール

多くの場合、サーバーに必要なツールがない場合、このコマンドを使用してインストールできます。yum は、Fedora、RedHat、CentOS のシェル フロントエンド パッケージ マネージャーであり、apt は Ubuntu プラットフォーム上にあります。

基本的な使い方
yum install curl
apt install curl


このコマンドは、他のコマンド マニュアルを表示するために使用され、特定のコマンドの詳細な機能と特定のパラメータを確認できます。これは非常に重要なコマンドです。通常、各コマンドで提供される --help よりもはるかに詳細な情報を提供します。

基本的な使い方
man curl curlコマンドのマニュアルを見る

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Linux のロード vmlinux デバッグ
  • LinuxでSVNサーバーを構築する方法
  • Linux Bash スクリプトを使用してユーザーを識別する方法の例
  • Linux で指定されたフォルダの各サブフォルダ内のファイル数を表示する
  • Linux での Redis の永続性、マスター スレーブ同期、Sentinel の詳細な説明
  • Mac:Linux での Jupyter ノートブックの設定とリモート アクセス方法
  • Linux での GDB 入門チュートリアル
  • Linux のさまざまなロックメカニズムの使用方法と違いについて詳しく説明します
  • Linux でのシェル変数の数値計算
  • Linuxカーネルマクロcontainer_ofの詳細な分析

<<:  Alibaba Cloud Centos 7.5 に MySQL をインストールするチュートリアル

>>:  JSX を使用してコンポーネント パーサー開発を構築する例

推薦する

Vue プロジェクトで mock を使用する方法をご存知ですか?

目次最初のステップ: 2 番目のステップは、request.js で関連する構成を行うことです。re...

iframe の src を about:blank に設定した後の詳細

iframe の src を 'about:blank' に設定した後、"...

Vueプロジェクトでのトークン検証ログイン(フロントエンド部分)

この記事の例では、Vueプロジェクトでのトークン検証ログインの具体的なコードを参考までに共有していま...

Vue データ内のプロパティをランダムに変更すると、ビューは更新されますか?

インタビュアー: Vue のソースコードを読んだことはありますか?応募者:あります。インタビュアー:...

独自のネイティブ JavaScript ルーターを作成する方法

目次序文導入JavaScript 履歴 API独自のネイティブJSルーティングを実装するHistor...

Vue プロジェクトで垂直テーブルを 2 つの方法で実装するアイデアの分析

問題の説明私たちのプロジェクトでは、水平方向のテーブルが一般的ですが、必要に応じて垂直方向のテーブル...

Vueは大画面ページのスクリーン適応を実現します

この記事では、大画面ページのスクリーンアダプテーションを実現するためのVueの具体的なコードを参考ま...

js オブザーバーモードの紹介と使用

目次定義2. 使用シナリオ3. 例を挙げる4. コーディング定義オブザーバー パターンは 1 対多の...

MySQL ストアドプロシージャの長所と短所の分析

MySQL バージョン 5.0 ではストアド プロシージャのサポートが開始されました。ストアド プロ...

MySQLの共有ロックと排他ロックの使用例の分析

この記事では、例を使用して MySQL の共有ロックと排他ロックの使用方法を説明します。ご参考までに...

html-cssタグのスタイル設定が機能しない2つの理由

1 セミコロン「;」のない CSS スタイル2 タグが閉じられておらず、「>」がありません...

MySQLデータベースパラダイムの詳細な説明

序文:データベースパラダイムについてはよく耳にしていましたが、詳細まで理解したことはありませんでした...

MySQL 5.7.33 インストール プロセスの詳細な図解

目次インストールパッケージのダウンロードインストール環境変数の設定インストールが成功したか確認する記...

ウェブページを作るときに注意すべき5つのポイント

1. 色合わせの問題<br />Web ページには 3 色以上使用しないでください。そう...

HTML フォームタグチュートリアル (3): 入力タグ

HTML フォーム タグのチュートリアル。このセクションでは、主に Web ページで INPUT タ...