Linux では、OS はオペレーティング システムを指します。これは、コンピュータのハードウェアとソフトウェア リソースを管理および制御するコンピュータ プログラムです。これは、「ベア メタル」上で直接実行される最も基本的なシステム ソフトウェアです。ソフトウェアはオペレーティング システムのサポートがある場合にのみ実行できます。 OS の存在理由: 純粋なハードウェア コンピューターは非常に効率が悪く、操作が困難です。
#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。
前書き: OS (オペレーティング システム) の学習は非常に重要です。ここでのオペレーティング システムの学習は、Linux から始まります。
Linux は命令によって動作し、OS に近いため、OS を使いこなすのが容易になります。 C を学習する場合、一般的にバックエンドで作業することが多くなりますが、バックエンドで作業したい人にとって Linux は非常に重要であり、作業用の OS は LINux である可能性が高くなります。
オペレーティング システム (オペレーティング システム、以下 OS) は、コンピュータのハードウェアを管理および制御するコンピュータ プログラムです。およびソフトウェア リソース。「ベア メタル」上で直接実行される最も基本的なシステム ソフトウェア。その他のソフトウェアを実行するには、オペレーティング システムがサポートしている必要があります。
OS の存在理由: 純粋なハードウェア コンピューターは非常に効率が悪く、操作が困難です。
OSとは、ソフトウェアとハードウェアのリソースを管理するためのソフトウェアであり、管理の目的は、上下を一致させて業務効率を向上させることです。
#実際のオペレーティング システム
(1)構文
: ls [オプション] [ディレクトリまたはファイル](ディレクトリまたはファイルは現在のディレクトリとして書き込まれません) (2) 機能
: ディレクトリの場合、このコマンドはディレクトリ内のすべてのサブディレクトリとファイルを一覧表示します。リストするファイルの場合、ファイル名とその他の情報がリストされます。
(3)共通オプション
① ls を直接サブディレクトリとファイルのみに使用します
② -l はファイルの詳細情報を一覧表示します (ls -l
のように記述できます。ll としても記述できます) ③ -a # で終わるファイルも含め、ディレクトリ内のすべてのファイルを一覧表示します。
##. で始まる隠しファイル#. で始まるファイルは隠しファイルと呼ばれ、どのディレクトリにも 2 つの隠しファイル が存在します。 path) .. (上位パス)
④ -i ファイルの i ノードのインデックス情報を出力します⑤ -n 名前の代わりに数値の UID と GID を使用します
( 4)例
ls -al
##2.pwd コマンド
(1)構文: pwd(2)
関数: ユーザーの現在のディレクトリを表示します パス区切り文字Linux の場合: / (スラッシュ)
Windows のパス区切り文字: \ (バックスラッシュ) (3)
Example pwd
3.cd コマンド
通常、ファイルを検索するときは、パスの位置を指定してファイルを見つけます。では、なぜパスを介してファイルを見つけるのでしょうか? Linux のディレクトリ構造は本質的にマルチツリーです (1. 各子ノードは、ディレクトリ (その後、再帰的に定義されたディレクトリまたは通常のファイルを配置します)、または通常のファイルのいずれかになります 2 。リーフこのマルチツリーのノードは通常のファイルまたは空のディレクトリである必要があります) したがって、どのノードも複数の子ノードを持つことができますが、どの子ノードも親ノードを 1 つだけ持ちます。
したがって、従来のパスの配置は一意です (
絶対パスは一意です)
相対パスに加えて、
絶対パスもあります(現在のパスからの相対パス)日常使用の場合は、相対パスをお勧めします - 単純です
構成ファイルを追加する場合は、絶対パスをお勧めします - いいえエラー (1)
構文: cd [ディレクトリ名]
(2)
関数: 作業ディレクトリを変更し、現在の作業ディレクトリを変更します指定されたディレクトリに。 (入力ディレクトリを入力) (3)
共通オプション① cd .. 上位ディレクトリに戻ります(.はカレントディレクトリ、..は上位ディレクトリ)
② cd 絶対パス③ cd 相対パス
④ cd - 最近アクセスしたディレクトリに戻ります
⑤ cd ~ ユーザーのホーム ディレクトリ (/home/hb) を入力します
(4) Example
cd .. : 上のディレクトリに戻ります
cd /home/hb/code : 絶対パス
cd ../test : 相対パス
cd - : 最近アクセスしたディレクトリに戻ります。
cd ~: ユーザーのホーム ディレクトリに入ります。
4.touch コマンド
空のファイルが作成された場合、そのファイルはディスク上のスペースを占有しますか?
占有されるファイルには属性データがあり、これもデータです
ファイル = ファイル コンテンツ ファイル属性
学習する必要があるファイル操作はすべて 2 つだけです。カテゴリ:
①ファイルの内容に対する操作
②ファイルの属性に対する操作
(1)構文: touch [オプション][ file]
( 2) 機能 : touch コマンドのパラメーターは、アクセス時刻や変更時刻を含むドキュメントまたはディレクトリの日付と時刻を変更したり、変更されない新しいファイルを作成したりできます。存在、
# (3)共通オプション #① タッチを直接使用してファイルを作成する
#(4)#例
touch test.c
5.mkdir コマンド
##(1)構文: mkdir [オプション] [ディレクトリ名]
(2)機能: カレントディレクトリ下にディレクトリを作成
(3)共通オプション
-p [パス名] はいはパス名です。パス内にまだ存在しないディレクトリがある場合、このオプションを追加すると、システムはまだ存在しないディレクトリを自動的に作成します。つまり、一度に複数のディレクトリを作成できます。 ( 4)
Examplemkdir dir: ディレクトリを作成します
mkdir -p dir1/dir2/dir3: 複数のディレクトリを再帰的に作成します6.rmdir コマンド && rm コマンド
rmdir はmkdir に関連するコマンド、mkdir はディレクトリを作成し、rmdir はディレクトリ
Ⅰを削除します。rmdir:(1)
Syntax(2)機能: 空のディレクトリを削除
(3)共通オプション
① -p サブディレクトリを削除した際、親ディレクトリも空ディレクトリになった場合は、親ディレクトリも一緒に削除します(4)
例rmdir dir
rmdir -p dirSyntaxⅡ.rm (通常、これがより頻繁に使用されます) (1)
(2)機能: ファイルまたはディレクトリの削除
(3)共通オプション
① rm を直接使用してファイルまたはディレクトリを削除します (すべてのファイルを削除できますが、削除できるのは空のディレクトリのみです) ② -r ディレクトリとその下のすべてのファイルを削除します (空でないディレクトリも削除できます)
③ -f ファイル属性が読み取り専用 (つまり書き込み保護) であっても、ファイルを強制的に削除します。
##④ -i 削除する前に 1 つずつ確認を求めます#(4 )
例 rm dir: ディレクトリの削除rm test: ファイルの削除
rm -r dir: ディレクトリ内のすべてのファイルを削除します現在のディレクトリ内のすべてに一致しますrm -rf dir: ディレクトリ内のすべてのファイルを強制的に削除します。
rm -ir dir: ディレクトリ内のすべてのファイルを削除するときに順番に確認します
* ワイルドカード:
rm *:
削除現在のディレクトリ内のすべてのファイル (rm ./* に相当)./ 現在のディレクトリ:
リソースが次のことを行うことをシステムに通知します。アクセス対象は現在のディレクトリにあります。省略した場合、デフォルトは現在のディレクトリになる場合があります7.man コマンド
##(1)Syntax: man [option] command(2)Function
: man はオンラインマニュアルに相当 Linux コマンドには多くのパラメータがあり、現時点では、man を使用して助けを求めることができます。(3)共通オプション
① -k キーワードに基づいてオンライン ヘルプを検索
② man man man# の関連操作を検索できます。##③ 対応する番号を入力すると、さまざまなコマンドが表示されます。 マニュアル:
1 は一般的なコマンドです#2 は open などのシステム コールです (これにより、この関数の呼び出し方法と必要なヘッダー ファイルが簡単にわかります)
3 はライブラリ関数です。 printf
4 などの特殊なファイル、つまり /dev配下の各種デバイス ファイルです。
5 は、ファイルの各フィールドの機能を説明するパスワードなどのファイルの形式を指します。
6 はゲーム用に予約されており、各ゲームによって定義されます。
7 は添付ファイルです。また、environ などのグローバル変数などのいくつかの変数についてはここで説明します。
##8 はシステム管理用のコマンドです。これらのコマンドは root のみが使用できます。たとえば、ifconfigman は次と同等です。オンライン マニュアル、Linux コマンド パラメータがたくさんあるので、すべてを覚えておくことはできませんが、現時点では man を使用してヘルプを得ることができます。 (4)例
man 1 lsman 3 printf
8.cp コマンド
(1)構文: cp [オプション] ソース ファイルまたはディレクトリ ターゲット ファイルまたはディレクトリ
(2)機能: ファイルまたはディレクトリのコピー
(3)共通オプション
① cpを直接使用してファイルをコピーします② - r 再帰処理、指定したディレクトリ内のファイルおよびサブディレクトリをコピーします。③ -f 宛先のファイルまたはディレクトリが既に存在するかどうかに関係なく、ファイルまたはディレクトリを強制的にコピーします。④ -i 上書きする前質問(4)例
cp file.txt file2.txtcp -r dir1 dir2 cp -rf dir ..
##9.mv コマンドmv コマンドは move の略で、移動に使用できます。ファイルまたはファイルの名前変更。ファイルまたはディレクトリのバックアップによく使用されます。
(1)
構文: mv [オプション] ソースファイルまたはディレクトリ ターゲットファイルまたはディレクトリ (2)
関数: mv コマンドの 2 番目のパラメーターのタイプ (ターゲット ファイルかターゲット ディレクトリか) に応じて、mv コマンドはファイルの名前を変更するか、新しいディレクトリに移動します。
①2 番目のパラメータの種類がソース ファイル (ソース ディレクトリ) の場合、mv コマンドはファイルの名前変更を完了します。この時点ではソース ファイルは 1 つだけであり、指定されたソース ファイルまたはディレクトリの名前が変更されます。指定されたターゲット ファイル名に対して
##2 2 番目のパラメータ タイプが既存のディレクトリ名である場合、複数のソース ファイルまたはディレクトリ パラメータが存在する可能性があり、mv コマンドは各パラメータで指定されたすべてのソース ファイルを # に移動します##(3)
ターゲット ディレクトリの共通オプション① mv を直接使用してファイルまたはディレクトリを移動または名前変更します② -f ターゲットの場合ファイルがすでに存在する場合、直接上書きするかどうかを尋ねられることはありません
③ -i 対象ファイルがすでに存在する場合、上書きするかどうかを尋ねられます
(4)
例mv ファイル.txt a.txt
mv ファイル.txt ..mv dir1 dir2 dir
10.cat コマンド
##(1)構文:cat [オプション][ファイル]
(2)関数: 表示対象 ファイルの内容 #(3)
共通オプション① -n 出力行番号
(4) 例
cat file.txtcat -n file.txt
cat を除く、
tac もあります。後ろから前から見た図 tac file.txtリダイレクト:
ここではまず、printf と同様のモニターに情報を出力します。 例: echo "hello world"echo
を導入し、
(1) 出力リダイレクト
ファイル touch file.txt を作成し、渡すことができます。echo "hello world" > file.txt
これにより、ディスプレイに書き込まれるコンテンツがファイルに書き込まれます (元のファイルのコンテンツは毎回読み取られて書き換えられます)(2) リダイレクトを追加
echo "hello Linux" >> file.txt
、上記の出力リダイレクトと似ていますが、ここでは2>、元のコンテンツは消去されませんが、元のファイルの末尾に新しいコンテンツが書き込まれます(3) 入力リダイレクト
cat 、入力リダイレクトは、キーボード ファイルからデータを読み取る方法を、指定されたファイルから読み取るように変更することです
##11.more コマンド
(1)
Syntax: more [option][file](2)Function: 関数は cat に似ていますただし、手動で下にスクロールすることもできます
(3) 共通オプション
① -n 出力行番号② q さらに終了
(4)例
詳細 file.txt12.less コマンド
(1)構文
: レス [オプション] ファイル(2)関数: cat などに似ていますが、機能はさらに異なります強力で、上下に調整できます (通常は、less が使用されます)
(3)共通オプション
① -n 出力行番号
② q 終了less
(4)例
##less file.txt
13.head コマンド
(1)構文: head [オプション] [ファイル]
(2)関数: ファイルの先頭を表示(デフォルトでは最初の10行が表示されます)
(3)共通オプション ##① -n 表示したい行数
##(4)Example
##head -20 file.txt
14.tail コマンド
(1)構文: rm [オプション][ファイル]
(2)関数: 終わりの先頭を表示(デフォルトでは最後の10行が表示されます)
(3)共通オプション
① -n 表示する行数を指定します(4)Example
tail -20 file.txt
パイプライン:①一時ファイルの作成 head -5030 file.txt > temp.txt を介して、最初に一時ファイルを取得し、次に tail -30 temp.txt を確認すると、[5000 , 5030]。 かなり複雑です。ファイルの中間部分 (10,000 行のテキストなど) を表示し、[5000, 5030] 行の情報を表示したい場合は、私たちは何をすべきか?
②パイプライン
パイプラインは、複数のコマンドをカスケードしてパイプライン スタイルのデータ処理を完了するために使用されます。 (データリソースを送信できます)
| これがパイプラインですこのように書くと head -5030 file.txt | tail -30
これで閲覧が完了しますパイプラインを通じて。15.date コマンド (時間関連コマンド)
(1)構文: date [オプション] [ format ]
(2)Function: 時刻またはタイムスタンプの表示形式を指定します
(3)共通オプション
① 表示では、ユーザーが表示したい形式を設定できます。形式は、マークの後にマークが続く形式に設定されます。よく使用されるマークのリストは次のとおりです。%H : 時
%M: 分
# %S: 秒
## %X: 相当から %H:%M: %S## %d: 日
# %m: 月
# %Y: 年
%F: %Y-%m-%d
② タイムスタンプTime-> と同等;Timestamp
date %sTimestamp->Time
date -d@Timestampタイムスタンプは 1970 年 1 月 1 日からの数値です。閏秒に関係なく秒数 #(4)Example
date %Y-%m-%d_%H:%M:%S
date %s
##16.cal コマンド
(1)構文
:cl [オプション] [年]
(2)機能: カレンダー表示(3)
よく使うオプション①直接使用するのは当月です
② -3 前月、当月、来月のカレンダーを表示します ③ -y 今年の年間カレンダーを表示します
(4 )例
cal -3cal -y 2020##17.find コマンド
(1)find コマンドは、ディレクトリ構造内のファイルを検索し、指定された操作を実行します。
Linux の find コマンドは、かなりの数の検索条件を提供し、非常に強力です。 find には強力な機能があるため、オプションも豊富です。
構文: find [場所の検索] [オプション] [検索](2)関数
: ファイル ツリーで使用されます。内のファイルを検索し、対応する処理を実行します (ディスクにアクセスする可能性があります)#(3)
共通オプション #① -name ファイル名でファイルを検索(4)例
find /usr/include/ -name stdio.h
18.grep コマンド
(1)
構文: grep [オプション] 検索文字列ファイル (2)関数
: In Search forファイル内の文字列を検索し、見つかった行を出力します (正規表現検索を使用します) (3)共通オプション
① grep を直接使用して文字列を出力します。文字列が必要な行 ② -i 大文字と小文字の違いを無視し、大文字と小文字を同じものとして扱います
③ -n 出力行番号 ④ -v 逆出力。検索する文字列を含まない行を出力します。 (4)Example grep 'hello ' file.txt grep -i 'HeLlo' file.txt grep -iv 'HeLlo' file.txt #19 .zip/unzip コマンド ## 1.zip: Syntax:zip は圧縮ファイルを定義しますname.zip [ディレクトリまたはファイル] 機能: ディレクトリまたはファイルをzip形式に圧縮します 共通オプション 例 (1) : 圧縮ファイルを解凍します(2) : Decompress( 3) ① unzip を使用して直接解凍します ② -d 圧縮するパスを指定します (4) #unzip test.zip (1)構文: tar [オプション] [ファイルまたはディレクトリ] (2)関数: 圧縮ファイルまたは解凍 (3)共通オプション ① -c 圧縮ファイルを作成します② -z gzip 属性があるかどうかを確認します。 gzip 圧縮を使用する必要がありますか? #⑤ -t 圧縮パッケージ内のファイルを表示します ⑥ -v 圧縮プロセス中にファイルを表示します ⑦ -C ファイルを指定されたディレクトリに抽出します (4) tar xzvf test.tgz 解凍プロセスにより、ファイル # が表示されます。 ## 21.bc コマンド (1) : bc [数字] [記号] [数字] 機能 : 電卓 (3)よく使うオプション ① bc を直接使って計算する 例 bc 1 2 (1) : uname [オプション] 関数: コンピューターおよびオペレーティング システムに関する関連情報を取得するために使用されます ( Linux ホストで使用されているオペレーティング システムのバージョン、ハードウェア名など)(3)共通オプション ① -r カーネル バージョンを表示 (4)例 uname -r uname -a ##23. ホットキー Tab : 暴走プログラムを終了 ③ Ctrl d: アカウントをすぐに終了します ④ Ctrl r: 履歴コマンドの検索 24. シャットダウン コマンド (1) : shutdown [オプション](2) : Shutdown(3)共通オプション ① -h システムサービス停止後、直ちにシャットダウン ② -r サービス停止後、システム再起動 ③ -t 番号を追加-t の後の秒数は、システムのシャットダウンにかかる秒数を示します。( 4) shutdown -h
3. シェル コマンドと動作原理
#1. はじめに シェルは OS システムを保護し、OS の運用コストを削減します。 シェル シェル: ユーザーの指示を伝え、OS に与え、OS が実行され、結果がシェルに与えられ、シェルがユーザーに渡されます。 技術的な観点から見ると、シェルの簡単な定義は次のとおりです。 ①ユーザーのコマンドを処理のためにカーネルに変換します ②同時に、コアの処理結果がユーザーに変換されます。 Linux では、シェルがコマンド ライン インタプリタです。 Window では、シェルはグラフィカル インターフェイスです。 centos 7 で一般的に使用されるコマンド ライン インタプリタ (シェル) は bash と呼ばれます Linux には 2 種類のユーザーがあります: ①スーパー ユーザー (root) ②一般ユーザー ①スーパー ユーザー: Linux システム下で何でもできる、制限なし ②一般ユーザー: Linux では限定的なことを行う コマンド: su [ユーザー名] 関数: ユーザーの切り替え 例:
zip test.zip パッケージzip -r test.zip tar_packagezip -r test.zip -d tar_package
# 2 . unzipunzip test.zip -d /home
##20.tar コマンド
(2) 構文
(2)①
Ctrl c## 厳密に言えば、Linux はオペレーティングシステムのことを「カーネル」と呼びますが、一般のユーザーはカーネルを直接使用することはできず、カーネルの「シェル」プログラム、つまりシェルを介してカーネルと通信します。 (Shell はシェル プログラムです)
2. 機能
4.Linux 権限の概念
su -
su user
以上がLinux OSとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。