Linuxゼロ基礎入門(4)Linux実践操作
序文
核心的な内容はブログのリンクから来ています 1
忘れないようにこの記事の記録のために、皆さんが著者をたくさんサポートしてくれることを願っています
Linuxの実践操作
いろいろなヒント(ショートカットキー)
1 Ctrl + C 強制停止
- Linux で特定のプログラムを実行している場合、強制的に停止したい場合は、ショートカット キーを使用できます。
ctrl + c
- コマンドが間違って入力された場合は、ショートカット キー ctrl + c を使用して現在の入力を終了し、再入力することもできます。
2 ctrl + d で終了またはログアウトします
- ショートカット キーを使用して
ctrl + d
、アカウントからログアウトできます。
- または、特定のプログラムの専用ページを終了します (vi/vim の終了には使用できません)
3 履歴コマンド検索
History コマンドを使用すると、履歴に入力されたコマンドを表示できます。コマンド プレフィックスを
使用すると、そのプレフィックスに一致する最後のコマンドを自動的に実行できます。!
ショートカット キー: を使用して、ctrl + r
履歴コマンドに一致するコンテンツを入力できます。
検索されたコンテンツが必要なものである場合は、次のようにします。
- Enterキーで直接実行可能
- キーボードの左右のキーを押して、このコマンドを取得します (実行ではありません)。
4 カーソル移動のショートカットキー
- Ctrl + A、コマンドの先頭にジャンプします
- Ctrl + E、コマンドの最後にジャンプします
- キーボードの Ctrl + 左キー、左に 1 単語ジャンプします
- Ctrl + 右キー、右に 1 単語ジャンプします
5 清屏
- ショートカット キーを使用して
ctrl + l
、ターミナルのコンテンツを空にすることができます - またはコマンドでも
clear
同じ効果が得られます
2つのソフトウェアのインストール
1 Linux システムのアプリケーション ストア
オペレーティング システムにソフトウェアをインストールするにはさまざまな方法があり、一般に次のように分類されます。
- インストールパッケージをダウンロードして自分でインストールします
たとえば、Win システムでは exe ファイル、msi ファイルなどが使用されます
。Mac システムでは、dmg ファイル、pkg ファイルなどが使用されます。
- システムのアプリストアにインストールされている
Win システムに Microsoft Store ストアがある場合
Mac システムに AppStore ストアがある場合
Linux システムもこれら 2 つの方法をサポートしています。まず、Linux コマンド ラインの「app Store」とソフトウェアをインストールする yum コマンドの使用方法を学びましょう。
2 yumコマンド
yum: RPM パッケージ ソフトウェア マネージャー。Linux ソフトウェアの自動インストールと構成に使用され、依存関係の問題を自動的に解決できます。
文法:
yum [-y] [install | remove | search] 软件名称
- オプション:
-y
、自動確認、インストールまたはアンインストールのプロセスを手動で確認する必要はありません install
:インストールremove
: アンインストールsearch
:検索
yum コマンドには root 権限が必要です。su で root に切り替えるか、sudo を使用して権限を昇格できます。
yum コマンドはインターネットに接続する必要があります
yum [-y] install wget
、yum コマンドを使用して wget プログラムをインストールし
yum [-y] remove wget
、yum コマンドを使用して wget コマンドをアンインストールし
yum search wget
、yum コマンドを使用して wget インストール パッケージを検索します。
3 apt コマンド拡張
先ほど学習したさまざまな Linux コマンドは共通です。ただし、ソフトウェアのインストールには、CentOS システムと Ubuntu では異なるパッケージ マネージャーが使用されます。
CentOS は yum マネージャーを使用し、Ubuntu は apt マネージャーを使用します。
先ほど学習した WSL 環境を通じて、Ubuntu オペレーティング環境を入手できます。
文法:
apt [-y] [install | remove | search] 软件名称
使い方はyumと同じでroot権限も必要です
apt install wget
、 wget をインストール
apt remove wget
、 wget を削除
apt search wget
、 wget を検索
3つのシステムctl
1 systemctl コマンド
Linux システムの多くのソフトウェア (組み込みまたはサードパーティ) は、systemctl
コマンド制御の使用をサポートしています: 自動的に開始、停止、起動します。管理
できるソフトウェアはsystemctl
、一般に「サービス」と呼ばれます
。
systemctl start | stop | status | enable | disable 服务名
- スタート スタート
- 途中下車する
- ステータスビューのステータス
- ブートを自動的にオンにするを有効にする
- disable 起動時の自動起動を無効にする
システムには次のような多くの組み込みサービスがあります。
- NetworkManager、主要なネットワーク サービス
- ネットワーク、セカンダリ ネットワーク サービス
- firewalld、ファイアウォール サービス
- sshd、ssh サービス (このサービスは、FinalShell が Linux にリモートでログインするために使用します)
これで、systemctl を使用して、これらのサービスの起動、シャットダウン、自動起動を制御できるようになります。
組み込みサービスに加えて、一部のサードパーティ ソフトウェアもsystemctl
インストール後に制御できます。
yum install -y ntp
、ntp ソフトウェアをインストールします
。ntpd サービス名を使用してsystemctl
制御と連携できます。
yum install -y httpd
、Apache サーバー ソフトウェアをインストールします
。httpd サービス名を使用してsystemctl
コントロールと連携できます。
一部のソフトウェアはインストール後に systemctl に自動的に統合されません。手動で追加できます。
4 つのソフト接続
1 ln コマンドでソフト接続を作成します
システム内にソフト リンクを作成して、ファイルやフォルダーを他の場所にリンクします。
Windows システムのショートカット構文に似ています
。
ln -s 参数1 参数2
- -s オプション、ソフト接続を作成します
- パラメータ 1: リンクするファイルまたはフォルダー
- パラメータ 2: リンク先
例:
ln -s /etc/yum.conf ~/yum.conf
ln -s /etc/yum ~/yum
5 日付、タイムゾーン
1 日付コマンド
コマンド構文を使用して、date
コマンドラインでシステム時間を表示できます
。
date [-d] [+格式化字符串]
-d
指定された文字列に従って日付を表示します。通常は日付の計算に使用されます。- 文字列の形式: 特定の文字列タグを使用して表示される日付形式を制御します。
%Y 年
%y 年份后两位数字 (00..99)
%m 月份 (01..12)
%d 日 (01..31)
%H 小时 (00..23)
%M 分钟 (00..59)
%S 秒 (00..60)
%s 自 1970-01-01 00:00:00 UTC 到现在的秒数
オプションなしでコマンド本体を使用しdate
、時間を直接確認すると、
この形式が非常に不快であることがわかります。フォーマット文字列を使用して表示フォーマットをカスタマイズできます。
-
日付を 2022-01-01 の形式で表示します
-
日付を 2022-01-01 10:00:00 の形式で表示します
上記同様、途中にスペースがあるため、書式指定文字列全体が二重引用符で囲まれます。
2 日付を加算および減算する date コマンド
-d
オプションで、通常は日付の計算に使用される、指定された文字列に従って日付を表示できます。
サポートされているタイムスタンプは次のとおりです。
year年
month月
day天
hour小时
minute分钟
second秒
-d
オプションはフォーマット文字列と組み合わせて使用できます
3 Linux のタイムゾーンを変更する
注意深い学生は、日付で表示される日付と時刻が不正確であることに気づくかもしれません。これは、システムのデフォルトのタイムゾーンが中国の東巴区ではないためです。root 権限を使用して次のコマンドを実行し、タイムゾーンを東巴区時間に変更します。
ゾーン
rm -f /etc/localtime
sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
システムに付属のファイルを削除しlocaltime
、/usr/share/zoneinfo/Asia/Shanghai
ファイルをlocaltime
ファイルとしてリンクします。
4ntpプログラム
ntp プログラムを使用してシステム時刻を自動的に調整できます
。ntp をインストールします。yum -y install ntp
起動し、ブートが自動的に開始されるように設定します。
systemctl start ntpd
systemctl enable ntpd
ntpd が開始されると、定期的にネットワークがシステム時刻を調整するのに役立ちます。
手動校正も可能です(root権限が必要です): ntpdate -u ntp.aliyun.com
Alibaba Cloud によって提供されるサービス URL と ntpdate (このコマンドは ntp のインストール後に追加されます) コマンドを介して自動的に調整します
6つのIPアドレス、ホスト名
1 IPアドレス
ネットワークに接続されているすべてのコンピュータには、他のコンピュータと通信するために使用されるアドレスがあります
。IP アドレスには主に 2 つのバージョンがあります。IPv4
バージョンの V4 バージョンと V6 バージョンのアドレス形式は次のとおりです: a.b.c.d
, ここで、abcd 0 ~ 255 の数値を表します (192.168 など)。88.101 は標準の IP アドレスです
次のコマンドを使用して、ifconfig
マシンの IP アドレスを表示できます。ifconfig
コマンドを使用できない場合は、次のコマンドをインストールできます。yum -y install net-tools
2 特別な IP アドレス
標準の IP アドレスに加えて、知っておく必要がある特別な IP アドレスがいくつかあります。
127.0.0.1
、この IP アドレスはこのマシンを参照するために使用されます
0.0.0.0
、特別な IP アドレス
- このマシンを参照するために使用できます
- ポート バインディングでバインディング関係を決定するために使用できます (後で説明します)。
- 一部の IP アドレス制限では、すべての IP を意味します。たとえば、リリース ルールが 0.0.0.0 に設定されている場合、すべての IP にアクセスが許可されることを意味します。
3 ホスト名
各コンピュータには、外部連絡先アドレス (IP アドレス) に加えて、ホスト名と呼ばれる名前を持つこともできます。Windows システムでも
Linux システムでも、システムのホスト名を設定できます。Windows
システムのホスト名
Linuxシステムのホスト名
4 Linux でホスト名を変更する
次のコマンドを使用できます:hostname
ホスト名を表示
次のコマンドを使用できます: hostnamectl set-hostname
host name、ホスト名を変更します (root が必要です)
再度ログインして、FinalShell
ホスト名が正しく表示されていることを確認します。
5 ドメイン名の解決
IP アドレスは非常に覚えにくいのですが、数値化された IP アドレスをホスト名または代替文字のアドレスに置き換える方法はありますか?
実際、私たちは常に特徴付けられたアドレスを介してサーバーにアクセスしており、IP アドレスを指定することはほとんどありません。
たとえば、ブラウザで開くと、www.baidu.com
Baidu の Web サイトが開きます。
その中にはwww.baidu.com
、Baidu の Web サイトがあり、これを次のように呼びます。ドメイン名
アクセスwww.baidu.com
手順は次のとおりです。
まず、本機の記録(プライベートアドレス帳)を確認します。
- Windows では次のものが表示されます。
C:\Windows\System32\drivers\etc\hosts
- Linux は次のものを検討します。
/etc/hosts
DNS サーバー (114.114.114.114、8.8.8.8 など) に再接続して問い合わせます。
6 ホスト名マッピングの構成
たとえば、FinalShell は IP アドレスを介して Linux サーバーに接続されていますが、ドメイン名 (ホスト名) を介して接続することは可能ですか?
はい、 Windows システムのC:\Windows\System32\drivers\etc\hosts
レコードを設定するだけで済みます: ファイル
7 固定IPが必要な理由
現在、仮想マシンの Linux オペレーティング システムは、DHCP サービスを通じて IP アドレスを取得しています。
DHCP: IP アドレスを動的に取得します。つまり、デバイスが再起動されるたびに 1 回取得されます。これにより、IP アドレスが頻繁に変更される可能性があります。
理由 1: オフィスのコンピュータの IP アドレスは変わっても問題ありませんが、Linux システムにリモート接続する必要があるため、IP アドレスが頻繁に変わる場合、頻繁に変更するのは非常に面倒です。
理由 2: 仮想マシンの IP アドレスとホスト名のマッピングを構成したところです。IP が頻繁に変更される場合は、マッピング関係も頻繁に更新する必要があります。
要約すると、IP アドレスを変更するのではなく、固定する必要があります。
8 VMware Workstation での固定 IP の構成
固定 IP を構成するには、次の 2 つの主要な手順が必要です。
- 1 VMware Workstation (または Fusion) で IP アドレス ゲートウェイとネットワーク セグメント (IP アドレスの範囲) を構成します。
- 2 Linux システムの構成ファイルを手動で変更し、IP を固定します。
まず最初のステップを実行し、図に従って操作します。
次に 2 番目のステップに進み、Linux システムの固定 IP を変更します。 /etc/sysconfig/network-scripts/ifcfg-ens33
vim を使用してファイルを編集し、次の内容を入力します
- 実行:
systemctl restart network
ネットワークカードを再起動し、ifconfig
IP アドレスが次192.168.88.130
のように
9 VMware Fusion での固定 IP の構成
詳細については、https://www.bilibili.com/video/BV1n84y1i7td ?p =35 を参照してください。
セブンネットワーク伝送
1 ping コマンド
ping
このコマンドを使用して、指定したネットワーク サーバーが通信状態にあるかどうかを確認できます
。 構文:
ping [-c num] ip或主机名
- オプション:
-c
、チェックの回数 (-c
オプションなし) は無限にチェックを続けます。 - パラメータ: ip または hostname、チェックされるサーバーの IP アドレスまたはホスト名アドレス
例:
baidu.com が接続されているかどうかを確認します。
結果は接続されていることを示し、遅延は約 8ms です。
39.156.66.10 が接続されているかどうかを確認し、3 回確認します
2 wgetコマンド
wget は、コマンド ラインからネットワーク ファイルをダウンロードできる非対話型ファイル ダウンローダーです
。
wget [-b] url
- オプション:
-b
、オプション、バックグラウンド ダウンロード。現在の作業ディレクトリの wget-log ファイルにログを書き込みます。 - パラメータ:
url
、ダウンロードリンク
例:
apache-hadoop 3.3.0 バージョンをダウンロードします。
wget http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz
バックグラウンドでダウンロード:次のコマンドを使用して、バックグラウンド
wget -b http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz
でのtail
ダウンロードの進行状況を監視できます。tail -f wget-log
注意: ダウンロードが完了したかどうかに関係なく、ダウンロードするファイルが生成されます。ダウンロードが完了していない場合は、不完全で使用できないファイルを時間内にクリーンアップしてください。
3カールコマンド
curl は http ネットワーク リクエストを送信できます。これは、ファイルのダウンロード、情報の取得などに使用できます
。構文:
curl [-O] url
- オプション:
-O
ファイルのダウンロードに使用されます。url
ダウンロード リンクの場合、このオプションを使用してファイルを保存できます。 - パラメータ:
url
、リクエストを開始するネットワークアドレス
例:ネットワーク要求を行うには
:cip.cc
curl cip.cc
カール経由で hadoop-3.3.0 インストール パッケージをダウンロードします。
curl -O http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz
4ポート
ポートは、デバイスが外部と通信するための入り口と出口です。ポートは物理ポートと仮想ポートの 2 種類に分類できます。
- 物理ポート: USB インターフェイス、RJ45 ネットワーク ポート、HDMI ポートなどの目に見えるポートであり、インターフェイスとも呼ばれます。
- 仮想ポート: コンピュータ内部のポートを指します。これは目に見えず、オペレーティング システムと外部世界との間の対話に使用されます。
5ポート(仮想)
物理的なポートは日常生活でよく目にするものであり、その機能を知ることもできます。
しかし、仮想ポートは何の役に立つのでしょうか? なぜ必要なのでしょうか?
コンピュータ プログラム間の通信では、IP を介してコンピュータをロックすることしかできませんが、特定のプログラムをロックすることはできません。
コンピュータ上の特定のプログラムをポート経由でロックして、プログラム間の通信を確保できます。
IPアドレスはコミュニティの住所に相当し、コミュニティには多数の世帯(プログラム)が存在することができ、ハウスナンバー(ポート)は各世帯(プログラム)の連絡先アドレスとなります。
Linux システムは 4 つのポートをサポートできる超大規模なコミュニティであり65535
、60,000 を超えるポートは 3 つのカテゴリに分類されて使用されます。
- 認識されるポート: 1 ~ 1023、通常、SSH サービスのポート 22 や HTTPS サービスのポート 443 など、一部のシステム組み込みプログラムまたは既知のプログラム用に予約されています。特別なニーズがない限り、この範囲のポートを占有しないでください
。 - 登録ポート: 1024~49151、通常は無料で使用でき、一部のプログラム/サービスを緩くバインドするために使用されます
- 動的ポート: 49152~65535。通常はプログラムに固定的にバインドされていませんが、プログラムが外部に接続するときに一時的に使用されます。
図に示すように、コンピューター A の WeChat はコンピューター B の WeChat に接続されています。A が使用する 50001 は動的ポートです。一時的にエクスポート ポートとしてポートを見つけます。コンピューター B の WeChat はポート 5678 を使用します
。登録されたポート。このポートを長時間バインドし、他のポートが接続するまで待ちます。
6 ポートの使用状況を表示する
Linux コマンドを使用してポート占有率を表示できます。
- nmap コマンドを使用して nmap をインストールします。
yum -y install nmap
文法:
nmap 被查看的IP地址
このマシン127.0.0.1
上の 5 つのポート( ) がプログラムによって占有されていることがわかります。
その中で:
ポート 22 は通常、SSH サービスによって使用されます。つまり、FinalShell が Linux にリモート接続するために使用するポートです。
このコマンドを使用するとnetstat
、指定したポートの占有率を表示できます
。構文:
netstat -anp | grep 端口号
netstat をインストールします。yum -y install net-tools
図に示すように、現在のシステムのポート 6000 は、その中のプログラム (プロセス番号 7174) によって占有されていることがわかります。0.0.0.0:6000
これは、ポートが0.0.0.0
この IP アドレスにバインドされていることを意味し、外部アクセスが許可されていることを意味します。
現在のシステムのポート 12345 が未使用であることがわかります。
8つの工程管理
1工程
プログラムはオペレーティング システムで実行され、オペレーティング システムによって管理されます。
実行中のプログラムを管理するために、各プログラムは実行中にオペレーティング システムによってシステム内のプロセスとして登録され、各プロセスには一意の次のものが割り当てられます。进程ID(进程号)
2 進捗状況を表示する
ps
Linux システムのプロセス情報は、次のコマンド構文を使用して表示できます
。
ps [-e -f]
- オプション:
-e
、すべてのプロセスを表示 - オプション:
-f
、完全にフォーマットされた形式で情報を表示します (すべての情報を表示します)
一般的に、固定された使用法は次のとおりです。ps -ef
すべてのプロセスのすべての情報をリストします。
3 指定したプロセスを表示する
FinalShell で次のコマンドを実行します: tail
, このコマンドがそこでブロックされていることがわかります.
FinalShell でタブ ページをコピーして実行します:このプログラムのプロセス情報をps -ef
調べます. 見つけるのは正確ですか? それとも非常に面倒ですか?tail
grep
次のようなパイプ文字を使用してフィルタリングできます
ps -ef | grep tail
。tail コマンドの情報を正確に見つけることができます。
- フィルタリングは名前、プロセス番号、ユーザーIDなどをフィルタリングするだけでなく、grepによるフィルタリングも可能
- 例:
ps -ef | grep 30001
、30001 キーワードを使用してプロセス情報をフィルタリングします (通常、30001 プロセス番号をフィルタリングすることを指します)。
4 プロセスを閉じる
Windows システムでは、タスク マネージャーでプロセスを選択した後、[プロセスの終了] をクリックしてプロセスを閉じます。
同様に、Linux では、kill
コマンドを使用してプロセスをシャットダウンできます。
文法:
kill [-9] 进程ID
- オプション: は
-9
、プロセスを強制的に終了することを意味します。このオプションを使用しない場合、プロセスに閉じるように求めるシグナルが送信されますが、閉じるかどうかはプロセス自体の処理メカニズムに依存します。
9 つのホストのステータス
1 システムリソースの使用状況を表示する
top
Windows タスク マネージャーと同様のコマンドを使用して CPU とメモリの使用状況を表示できます。
デフォルトでは 5 秒ごとに更新されます。構文:top
直接入力し、q
または を押してctrl + c
終了します。
2 topコマンドの内容の詳細説明
1行目:
top: コマンド名、14:39:58: 現在のシステム時刻、up 6 min: 6分間開始、2 users: 2ユーザーがログイン、load: 1、5、15分load 2行目
:
タスク: 175 プロセス、1 実行中: 1 実行中の子プロセス、174 スリープ中: 174 スリープ中プロセス、0 停止プロセス、0 ゾンビ プロセス 3 行目
:
%Cpu(s): CPU 使用率、us: ユーザー CPU 使用率、sy: システム CPU 使用率、ni: 高優先度プロセスが占有する CPU 時間の割合、id: アイドル CPU 率、wa: IO 待機中の CPU 使用率、hi : CPUハードウェア割り込み率、si: CPU ソフトウェア割り込み率、st: 強制待機によって占有される CPU 率
4 行目と 5 行目:
Kib Mem: 物理メモリ、total: 総量、free: アイドル、used: 使用、buff/cache: バフおよびキャッシュ占有
KibSwap: 仮想メモリ (スワッピング領域)、total: 総量、free: アイドル、used: 使用、buff /cache: バフとキャッシュが占有されています
PID:进程id
USER:进程所属用户
PR:进程优先级,越小越高
NI:负值表示高优先级,正表示低优先级
VIRT:进程使用虚拟内存,单位KB
RES:进程使用物理内存,单位KB
SHR:进程使用共享内存,单位KB
S:进程状态(S休眠,R运行,Z僵死状态,N负数优先级,I空闲状态)
%CPU:进程占用CPU率
%MEM:进程占用内存率
TIME+:进程使用CPU时间总计,单位10毫秒
COMMAND:进程的命令或名称或程序文件路径
上位 3 つのコマンド オプション
top コマンドは次のオプションもサポートしています。
4 つのトップ インタラクティブ オプション
top が対話的に実行されている場合 (-b オプションで開始されていない場合)、次の対話型コマンドで制御できます。
5 ディスク情報の監視
コマンドを使用してdf
、ハードディスクの使用状況を表示します
。 構文:
df [-h]
オプション: -h
、より使いやすい単位で表示されます。CPU とディスクに関する情報を表示する
ために使用できます。 構文:iostat
iostat [-x] [num1] [num2]
- オプション:
-x
、詳細情報を表示 - num1: 数値、リフレッシュ間隔、num2: 数値、リフレッシュ回数
tps: このデバイスの 1 秒あたりの送信数(Indicate the number of transfers per second that were issued to the device.)
。「転送」とは「I/O リクエスト」を意味します。複数の論理リクエストを「1 つの I/O リクエスト」に組み合わせることができます。「1 回の転送」リクエストのサイズは不明です。
iostat
オプションを使用すると-x
、より詳細な情報を表示できます
rrqm/s: 每秒这个设备相关的读取请求有多少被Merge了(当系统调用需要读取数据的时候,VFS将请求发到各个FS,如果FS发现不同的读取请求读取的是相同Block的数据,FS会将这个请求合并Merge, 提高IO利用率, 避免重复调用);
wrqm/s: 每秒这个设备相关的写入请求有多少被Merge了。
rsec/s: 每秒读取的扇区数;sectors
wsec/: 每秒写入的扇区数。
rKB/s: 每秒发送到设备的读取请求数
wKB/s: 每秒发送到设备的写入请求数
avgrq-sz 平均请求扇区的大小
avgqu-sz 平均请求队列的长度。毫无疑问,队列长度越短越好。
await: 每一个IO请求的处理的平均时间(单位是微秒毫秒)。
svctm 表示平均每次设备I/O操作的服务时间(以毫秒为单位)
%util: 磁盘利用率
6 ネットワーク状態の監視
sar
このコマンドを使用すると、ネットワークの関連統計を表示できます(sar コマンドは非常に複雑です。ここでは統計ネットワークにのみ使用されます)
。 構文:
sar -n DEV num1 num2
- オプション:
-n
、ネットワークを表示するには、DEV はネットワーク インターフェイスを表示することを意味します - num1: 更新間隔 (入力しない場合は 1 回チェックして終了)、num2: ビュー数 (無制限に入力しないでください)、図に示すように、2 回チェック、3 秒に 1 回更新
、最後に平均記録を要約します
。
IFACE 本地网卡接口的名称
rxpck/s 每秒钟接受的数据包
txpck/s 每秒钟发送的数据包
rxKB/S 每秒钟接受的数据包大小,单位为KB
txKB/S 每秒钟发送的数据包大小,单位为KB
rxcmp/s 每秒钟接受的压缩数据包
txcmp/s 每秒钟发送的压缩包
rxmcst/s 每秒钟接收的多播数据包
10 個の環境変数
1 環境変数
コマンドを説明するときwhich
、使用されている一連のコマンドは、実際には 1 つずつ実行可能なプログラムであることがわかります。
たとえば、cd
コマンドの本体は/usr/bin/cd
このプログラム ファイルです。
現在の作業ディレクトリがどこにあっても、このプログラムを実行できるのはなぜか、疑問はありませんか/usr/bin/cd
?
これが環境変数の役割です。
環境変数は、オペレーティング システム (Windows、Linux、Mac) の実行時に記録され、システムの実行を支援する重要な情報です。
Linux システムで実行します:env
現在のシステムに記録されている環境変数を表示するコマンド 環境変数は、次の図に示すように、構造体の
一種KeyValue
、つまり名前と値です。 図に示すように、次のように
記録されます。
HOME:/home/itheima,用户的HOME路径
USER:itheima,当前的操作用户
PWD:当前工作路径
......
システムの実行時に環境変数から重要な情報を取得するのに役立つ一連の情報を待ちます。
2 環境変数:PATH
前の質問で、現在の作業ディレクトリが何であっても、/usr/bin/cd
このプログラムは実行できると言いましたが、これはPATH
環境変数内のこのプロジェクトの値を利用して実行されます。
上の図に記録されているように、PATH には、システムがコマンドを実行するための検索パスが記録されます (パスは で区切られています:
)。
/usr/local/bin
/usr/bin
/usr/local/sbin
/usr/sbin
/home/itheima/.local/bin
/home/itheima/bin
コマンドを実行すると、実行するプログラム本体が上記のパスから順番に検索され、
例えばcdコマンドを実行する場合、2番目のディレクトリからcdコマンドが検索されて/usr/bin
実行されます。
3 $ 記号
Linux システムでは、$
「変数」の値を取得するためにシンボルが使用されます。
環境変数によって記録された情報は、オペレーティング システム自体によって使用されるだけでなく、アクセスしたい場合にも使用できます。
環境変数の値は、次の構文を使用して取得できます。 $環境変数名
例: echo $PATH
PATH 環境変数の値を取得し、echo ステートメントを使用して出力できます。
または:echo ${PATH}ABC
他のコンテンツと混合する場合、{}
変数が誰であるかをマークできます。
4 自分で環境変数を設定する
Linux 環境変数はユーザーが設定でき、次のように分類されます。
- 一時的な設定、構文:
export 变量名=变量值
- 現在のユーザーに対して永続的に有効で
、現在のユーザーの:~/.bashrc
ファイルで
すべてのユーザーに対して構成され、システムの:/etc/profile
ファイルで
構文: で構成されsource 配置文件
、すぐに有効になります。または、FinalShell に再度ログインして有効になります。
環境変数 PATH には、システムがコマンドを実行するための検索パスが記録されます。
これらの検索パスを自分で PATH に追加することもできます。
テスト:
- 現在のHOMEディレクトリにフォルダーを作成し、
myenv
そのフォルダー内にファイルを作成しますmkhaha
- vim エディターを使用して、
mkhaha
ファイルに次のように入力します。echo 哈哈哈哈哈
上記の操作が完了した後、作業ディレクトリを任意に切り替えてmkhaha
コマンドを実行して試してみると、実行できないことがわかります。
- PATH の値を変更します。
PATH: を一時的に変更し、実行できる場所に関係なく、export PATH=$PATH:/home/itheima/myenv
再度実行するか、ユーザー環境変数ファイルまたはシステム環境変数ファイルに入力します。mkhaha
export PATH=$PATH:/home/itheima/myenv
11 アップロードとダウンロード
1 アップロード、ダウンロード
FinalShell ツールを介して仮想マシンと簡単にデータを交換できます。
FinalShell ソフトウェアの下部ウィンドウには、Linux ファイル システム ビューが提供されており、次のことが便利です。
- ファイル システムを参照して適切なファイルを見つけ、右クリックしてダウンロードし、ローカル コンピュータに転送します。
- ファイル システムを参照して、適切なディレクトリを見つけ、ローカル コンピュータからそこにファイルをドラッグし、データを Linux に簡単にアップロードします。
2 rz、szコマンド
もちろん、FinalShell の下部ウィンドウを介してファイルを転送することに加えて、rz および sz コマンドを介してファイルを転送することもできます。
rz および sz コマンドをインストールする必要があり、yum -y install lrzsz
次の方法でインストールできます。
- アップロードする rz コマンド、構文:直接入力する
rz
だけです
- ダウンロードする sz コマンド、構文:
sz 要下载的文件
ファイルはfsdownload
デスクトップの : フォルダーに自動的にダウンロードされます。
rz および sz コマンドを正常に実行するにはターミナル ソフトウェアのサポートが必要であることに注意してください。FinalShell
、SecureCRT、XShell などの一般的なターミナル ソフトウェアはすべてこの操作をサポートしています。
12 圧縮、解凍
1 圧縮形式
市場には多くの圧縮形式が存在します
zip格式:Linux、Windows、MacOS,常用
7zip:Windows系统常用
rar:Windows系统常用
tar:Linux、MacOS常用
gzip:Linux、MacOS常用
winrar、bandizip、その他のソフトウェアなど、Windows システムで一般的に使用されているソフトウェアはすべて、さまざまな一般的な圧縮形式をサポートしているため、ここでは説明しません。
ここでは、Linux システムでの操作方法を学びます。tar、gzip、zip は、ファイルの圧縮と解凍操作を実行するための 3 つの圧縮形式です。
2 tarコマンド
Linux および Mac システムでは一般的に使用される 2 つの圧縮形式があり、接尾辞は次のとおりです。
.tar
、アーカイブ ファイルと呼びますtarball
。つまり、ファイルを 1 つの.tar
ファイルにまとめるだけで、ファイル サイズはあまり減らず、単純なカプセル化だけです。.gz
これは、ファイルをフォーマットで圧縮する、つまり、圧縮アルゴリズムを使用してファイルを 1 つのファイルに圧縮するために.tar.gz
も一般的に使用され、圧縮ボリュームを大幅に削減できます。gzip
gzip
これら 2 つの形式では、tar
コマンドを使用して圧縮および解凍操作を実行できます
。 構文:
tar [-c -v -x -f -z -C] 参数1 参数2 ... 参数N
-c
、圧縮モードの場合、圧縮ファイルを作成します。-v
圧縮と解凍のプロセスを表示し、進行状況を表示するために使用されます。-x
、解凍モード-f
、作成するファイル、または解凍するファイルの場合、-f オプションはすべてのオプションの最後になければなりません-z
、gzip モード、-z を使用しないのは通常の tarball 形式です-C
、解凍モードの解凍先を選択します。
3 tar コマンド圧縮
タールの一般的な組み合わせは次のとおりです。
tar -cvf test.tar 1.txt 2.txt 3.txt
1.txt 2.txt 3.txt を test.tar ファイルに圧縮します。
tar -zcvf test.tar.gz 1.txt 2.txt 3.txt
1.txt 2.txt 3.txt を test.tar.gz ファイルに圧縮し、gzip モードを使用します
注: -z オプションを使用する場合、通常はオプション位置の
最初の -f オプションであり、オプション位置の最後になければなりません。
4 タール解凍
一般的に使用される tar 解凍の組み合わせは次のとおりです。
tar -xvf test.tar
test.tar を解凍し、ファイルを現在のディレクトリに解凍します。
tar -xvf test.tar -C /home/itheima
test.tarを解凍し、指定したディレクトリ(/home/iheima)にファイルを解凍します。
tar -zxvf test.tar.gz -C /home/itheima
test.tar.gzをGzipモードで解凍し、指定したディレクトリ(/home/iheima)にファイルを解凍します。
注:
-f オプションは、オプションの組み合わせの最後にある必要があります
。-z オプションは、最初に使用することをお勧めします
。-C オプションは、解凍に必要な他のパラメータとは別に、単独で使用されます。
5 ファイルを圧縮する zip コマンド
zip
このコマンドを使用して、ファイルをzip
圧縮パッケージに圧縮できます
。 構文:
zip [-r] 参数1 参数2 ... 参数N
-r
、フォルダーが圧縮されている場合は、 etc. コマンドの効果と一致する-r
オプションを使用する必要があります。rm、cp
-r
例:
zip test.zip a.txt b.txt c.txt
a.txt b.txt c.txt を test.zip ファイルに圧縮します
zip -r test.zip test itheima a.txt
test フォルダーと itheima フォルダー、および a.txt ファイルを test.zip ファイルに圧縮します。
6 ファイルを解凍する unzip コマンド
コマンドを使用して圧縮パッケージをunzip
簡単に解凍します。 構文:zip
unzip [-d] 参数
- -d、tarの-Cオプションと同じ、解凍する場所を指定します。
- パラメータ、解凍する zip アーカイブ ファイル
例:
unzip test.zip
、test.zip を現在のディレクトリに抽出し
unzip test.zip -d /home/itheima
、test.zip を指定したフォルダー (/home/itheima) に抽出します。