1. ホーム
  2. リナックス

これは、Linuxを学ぶ方法、階下の王DaLuはすでに始まっている、あなたはまだ来ていないのですか?

2022-02-24 05:26:57
<パス

Linux Starter Editionの宝の山

I Linuxは今日から始めなければならないが、今日は王師匠が家にいないため、まず私が急いだ。

町屋を暖める

Linuxクイックスタート

1. 開発の歴史

Linuxシステムのプログラミングを学ぶと、「Linuxはどこから来たのだろう?どのように進化してきたのか?

01. LINUX開発の歴史

<ブロッククオート

1991年10月5日、ヘルシンキ大学の大学院生であったリーナス・ベネディクト・トーバルズは、LinuxというUNIXライクな小型OSをプログラムしたと、Usenetニュースグループ(com.os.minix)で発表しました。 --The new operating system was inspired by another small UNIX operating system --The new operating system was inspired by another UNIX mini-OS called Linux, that was named a teacher who had developed by Andrew S Tanenbaum. 読者は、リリースされたシステムはLinuxのバージョン0.01だと推測するかもしれませんが、そうではありません。本当のLinuxバージョン0.01は、実用に耐えないので公開されなかったのです。Linusはこのバージョンのソースコードを最初のLinuxのFTPサイト(ftp://nic.funet.fi)で公開しただけです。
トーバルズが10月5日にリリースしたバージョン0.02と呼ばれるLinuxは、GNU Bourne Again Shell (bash) とGNU Cコンパイラ (gcc) のほか、いくつかの言語を実行できるようになっています。作成されたオペレーティングシステムは、いわゆるLinuxと呼ばれるものである。
Linuxはバージョン0.02でリリースされ、その後0.03となり、0.10にジャンプアップしました。世界中のプログラマーがLinuxを開発するようになったため、バージョン0.95に到達しました。これは、まさにバージョン1.0の発表の時期が遠くないことを意味している。1.0の正式リリースは、1994年のVS Windows Development Historyで発表されました。

02.オープンソース

Linux は、フリーでオープンソースの UNIX 系 OS で、カーネルは 1991 年に Linastoise からリリースされ、その後、ユーザースペースアプリケーションを追加して Linux オペレーティングシステムとなりました。Linuxは単にOSのカーネルそのものですが、その意味を伝えるために"Linux kernel "という用語で呼ばれることがよくあります。このため、Linuxは、GUIコンポーネントやその他多くのユーティリティを含む、Linuxカーネルをベースとした完全なオペレーティング・システムを指すことが多い。

<ブロッククオート

GNU一般公衆利用許諾契約書(GNU GPLまたはGPL)は、もともとリチャード・ストールマンがGNUプロジェクトのために書いた、広く使われているフリーソフトウェアのライセンス契約で、コンピュータプログラムに対してフリーソフトウェアの定義を与え、GPLベースのソフトウェア開発から派生した製品はすべてリリースしなければならない。GPLベースのソフトウェア開発から派生した製品はGPLライセンスでリリースし、ソースコードを公開する必要がある。Linuxは、フリーソフトウェアやオープンソースソフトウェア開発の最も有名な例です。GNU 一般公衆利用許諾契約書に従っている限り、個人や組織は Linux の基礎となるすべてのソースコードを自由に使用することができ、また、自由に改変や再配布をすることができます。Linux が飛躍的に成長するにつれ、Linux 上に統合された様々なオープンソースソフトウェアやユーティリティが採用され、普及し、その結果、Linux はオープンソースソフトウェアの代名詞となった。

03.リリースバージョン

  • Debian
    Debianは非常に安定して動作するため、サーバでの使用に最適です。オペレーティングシステム debian は確かに初心者向けではなく、システム管理者や上級者向けです。
  • ウブントゥ
    Ubuntu は Debian の派生版であり、現在最も人気のあるフリーなオペレーティングシステムです。
  • レッドハット・エンタープライズ・リナックス
    商用市場向けの最初のLinuxディストリビューション。サーバーエディションがあり、x86 や x86_64 など、多数のプロセッサアーキテクチャをサポートしています。
  • CentOS
    CentOSは、Red Hat Enterprise Linuxからフリーなソースコードを使用して再構築されたエンタープライズLinuxディストリビューションです。CentOS は、パッケージの管理に YUM を使用しています。
  • フェドラ
    FedoraはRed Hatのテストプラットフォームであり、製品はこのプラットフォーム上で開発、テストされ、エンタープライズディストリビューションになります。
  • Kali Linux
    Kali Linux は Debian の派生版です。kali は侵入テストを目的としており、パッケージの管理に APT を使用しています。
    ... ...

04. オスのコンセプト、ポジショニング

コンピュータをもっとよく動かそう これがOSの基本的な考え方です。

2. Xshellの使用

Linuxホストipの表示
ターミナルでifconfigコマンドを入力すると、ipアドレスが表示されます。

<ブロッククオート

XShellを使用してホストにログインする
XShellターミナルにssh [ipアドレス]と入力します。
ipを先ほど見たifconfigの結果に置き換えてください。
ネットワークが開いている場合は、ユーザー名とパスワードを入力する画面が表示されます。正しくログインするには、それを入力します

<ブロッククオート

XShellの下にコピー&ペースト
コピー: ctrl + insert (学生によってはfnを押しながらinsertを押す必要があります)
貼り付け:シフト+挿入
ctrl + c / ctrl + v が効きません。

<ブロッククオート

ルートユーザー

<ブロッククオート

一般ユーザー

注意事項

  1. <マーク Linuxでのコマンドはすべて実行可能なプログラムです
  2. Linux (すべてがファイル)
  3. No message is the best message (コマンド実行後、システムがコマンドの実行に成功したことを示すメッセージを表示しない場合)

3. Linux共通コマンド

01.lsコマンド

Command Paradigm: ls [command line argument][directory or file] 
Function: For a directory, this command lists all subdirectories and files under that directory. For files, the file names and other information will be listed.


lsの後にディレクトリやフォルダーがない場合、デフォルトで現在のディレクトリやフォルダーの内容を出力します。
コマンドライン引数
-l ファイルの詳細を一覧表示します。
一般的なファイルには "-"を使用します。
dはフォルダを表します
の後に現在のファイルパーミッションの前にスペースがあり、その後にリンク数があり、その後にファイルの所有者があり、その後にファイルが属するグループがあり、その後にファイルサイズ(バイト)があり、その後に修正時間があり、その後にファイル名があります。
-a は、暗黙のファイル(.で始まるファイル)を含む、ディレクトリ内のすべてのファイルを一覧表示します。
. 現在のディレクトリ
... 前レベルのディレクトリ
-h は現在のファイルサイズを表示します。

<ブロッククオート

ls -lrt 時間で並べ替え

02. pwdコマンド

Function: Show the user's current directory


"/"は、現在のシステムのルートディレクトリを示します。

ルートユーザーのホームディレクトリを意味し、ルートユーザーが毎回ログオンする場所です。
ユーザーによってホームディレクトリは異なる

最初の / はルートディレクトリ、それ以降の / はパススプリッターです。
ルートディレクトリ:絶対パスの最初の/です。
ホームディレクトリ
1. ホームディレクトリはユーザーによって異なる
2.ルート:デフォルトのホームディレクトリは/rootです。

通常のユーザー 通常、一般ユーザーのホームディレクトリは、/home/ユーザー名フォルダです

03.cdコマンド

Syntax:cd [path]
Function: Change the working directory. Changes the current working directory to the specified directory.


cd ... : 親ディレクトリに戻る
cd /home/litao/linux/ : ルートディレクトリを起点とした絶対パス。
cd .../day02/ : 相対パス、前のパスからの相対パス ...
cd . /day02/ : 現在のパスからの相対パス。のことです。

cdショートカットの使い方

<テーブル コマンド 説明 cd 実行中のユーザーのホームディレクトリに戻る cd ~ ユーザーのホームディレクトリを入力します cd - 戻る(最近アクセスしたディレクトリに切り替える)

04.タッチコマンド(ドキュメント作成)

<ブロッククオート

構文:touch+filename
機能を説明します。touchコマンドパラメータは、ドキュメントやディレクトリのアクセスタイムや変更タイムなどの日時を変更したり、存在しないファイルを新規に作成したりします。

05.mkdirコマンド(重要)(フォルダの作成)

<ブロッククオート

構文:mkdir [option] dirname...
機能 カレントディレクトリに"dirname"という名前のディレクトリを作成します。

-p, --parents にはパス名を指定します。パスの中にまだ存在しないディレクトリがある場合、このオプションを追加すると、まだ存在しないディレクトリが自動的に作成されます、つまり、複数のディレクトリを一度に作成することができます。

06.rmdirコマンド &&rm コマンド(重要)。

 (Delete folders and delete files)
 Syntax: rmdir [-p][dirName] 


-p サブディレクトリを削除する際に、親ディレクトリも空になると、親ディレクトリと一緒に削除されます。

 Syntax: rm [-f-i-r-v][dirName/dir] 
 Function: Delete a file or directory


-f ファイルの属性が読み取り専用(書き込み禁止)であっても削除します(強制削除)。
-r ディレクトリとその下のすべてのファイルを削除します (再帰的削除)
-i 削除する前に、一つずつ確認を求める 例: rm -ri+フォルダ名
<マーク 注)1.rm -rf /* ルートディレクトリから始まるすべてのファイルを削除するを無効にする。
2. rm -rf を使用する * rm -rf . /* カレントディレクトリのファイルを全て削除する。

07.manディレクティブ(重要)。

Syntax: man [option] command
-k Search online help by keyword
num Search only in the numth chapter
-a shows all chapters, e.g. man printf which by default searches from chapter 1 until it stops, with the a option, when q is pressed to exit, it will continue searching until all chapters are searched.


<マーク 質問がある場合は、男性に尋ねてください <ブロッククオート

1は一般的なコマンド
2はopenやwriteなどのシステムコール(これなら少なくとも、機能を呼び出すためにどのようなヘッダを追加する必要があるかは簡単に分かる)。
3はprintf、freadなどのライブラリ関数 4は特殊なファイル、つまり/dev以下の各種デバイスファイル
マニュアル3:クエリーはすべてライブラリ関数である
5はファイルの形式、例えばpasswdで、ファイルの各フィールドの意味を説明しています
6はゲーム用で、ゲーム本体で定義されます
7は添付ファイルで、environへのグローバル変数などいくつかの変数がここに記述されています
8はシステム管理用のコマンドで、ifconfigなどrootのみが使用できるものです

08.エコーリダイレクト

echo Output content, also output environment variables eg: echo $path


リダイレクト文字「">"
例:echo abcd > test (abcdをtestファイルに入れる)
cat test (ファイルの中身を見る)

09.猫

cat filename 
Function: View the contents of the target file
-n Number all lines of output

 Function: Copy a file or directory


10. cpコマンド

 Function: Copy a file or directory


ファイル:cp ファイルパス
cp ファイルパス/リネーム
フォルダ:-rオプションが必要、再帰的な処理
-r 指定されたディレクトリにあるファイルをサブディレクトリとともに再帰的に処理します。ソースファイルやディレクトリがディレクトリやシンボリックリンクでない形式の場合、通常のファイルとして扱われます

11. mvディレクティブ

<ブロッククオート

mvはmoveの略です。
1. ファイルを移動する
移動:mv 移動元のファイルまたはディレクトリ 移動先のファイルまたはディレクトリ

2. ファイルの移動(リネーム)は、Linuxでは一般的なコマンドで、ファイルやディレクトリのバックアップによく使用されます。
名前の変更:mv ファイル名 新しい名前

12.その他のディレクティブ

<ブロッククオート

機能です。moreコマンドは、catのような機能です。

<テーブル 列1 カラム2 -n 出力のすべての行の番号 f 新しいコンテンツを表示するために戻る、1ページ b 前方表示、1ページ q 退出

seq 1 100 > test 1-100をtestに書き込む。

13. less ディレクティブ

<ブロッククオート

少ないファイル数
機能: lessはmoreと似ているが、moreが前に進むだけで後ろに進めないのに対し、lessはファイルを自由に閲覧することができ、lessは閲覧するまでファイル全体を読み込まない。

<テーブル キャラクター 機能 / 文字列 文字列を下に検索する機能 ? 文字列 文字列を検索する関数です。 n 前回の検索を繰り返す(/または?関連) N 前検索の逆リピート(/または?関連)。 q 停止

14.ヘッド

<ブロッククオート

1. 文書の最初の部分、デフォルトの10行の内容を表示します。

2.-num 自分で番号を指定する。

15.テール

<ブロッククオート

ドキュメントの末尾にあるコンテンツを表示します。
-f ループで読み込む
tail -f ファイル

この時点でユーザー入力モードになっているので、終了するには[Ctrl+c]キーを押します。

圧縮と解凍を行うzip、unzip、tarコマンドです。

16.zip

<ブロッククオート

1. file:zip圧縮ファイル .zip圧縮されるファイル
2. folder:zip -r 圧縮ファイル .zip フォルダを圧縮します。
<マーク アンジップ
1. unzip[xxx].zip デフォルトでカレントパスに解凍されます。

2. unzip[xxx].zip -d [パス]を指定します。

17. tar ディレクティブ

<ブロッククオート

ジージー
圧縮: tar -zcvf 圧縮ファイル名 .tar.gz 圧縮されるファイルまたはフォルダ
z:gz圧縮方式 c:圧縮ファイルの作成 v:圧縮・解凍の過程を表示
f: 圧縮ファイル名を直接指定する必要があります。
解凍: tar -zxvf 解凍されるファイル.tar.gz x:解凍

<ブロッククオート

ビーゼットツー
圧縮:tar -jcvf 圧縮ファイル名 .tar.bz2 圧縮されるファイルまたはフォルダ
j:bz2圧縮方式
解凍:tar -jxvf 圧縮されるファイル .tar.bz2

18.検索、grep

<ブロッククオート

find: Linuxシステムでファイルを探す
find [path] -name 探すファイルの名前

<ブロッククオート

grep: ファイル内の文字列を検索する
grep [文字列] [パス] -R 再帰的なルックアップ
パス内のファイルの内容をデフォルトで検索します。

19.日付 日付+時間コマンド

<ブロッククオート

現在のシステム時刻を変更する場合。
日付 -s"特定の時刻を秒に換算"。
cal:カレンダー、月別表示

cal -y (年)

20. bcコマンド

bcコマンドは浮動小数点演算を簡単に行うことができます

21.uname -r OSのバージョン情報を取得する

カーネルバージョン el6, el7
x86アーキテクチャ
アームアーキテクチャ

22. いくつかの重要なホットキー

<ブロッククオート

タブボタン - コマンド補完機能およびファイル補完機能付き
Ctrl+cボタン - 現在のプログラムを停止します。
ヒストロイ 実行したコマンドの履歴を表示する
! シリアル番号の表示 繰り返し実行
! 部分文字列(最近実行されたものと一致)

23. コマンドラインインタプリタ

<ブロッククオート

コマンドラインインタプリタは、ユーザーとオペレーティングシステムとの間の直接通信を提供する独立したソフトウェアプログラムです。コマンドラインインタプリタは、コマンドラインを解釈して実行するために使用されるインタプリタの一種です。
1. ユーザーが入力したコマンドをオペレーティングシステムに渡す
2. オペレーティングシステムの処理結果をユーザーに提示すること
コマンドラインインタプリタとは、以下の総称です。
bash:現在使用中のコマンドラインインタプリタの名前はbashです。

<ブロッククオート

上記は、この記事の焦点である、今日はハの終わりです、ビューの異なる点を持っているか、または友人の異なるアイデアを持っている相互の進歩の原則に沿って、プライベート私ハを鑑賞するためにあなたを歓迎し、私はあなたが私のアドバイスにもっとできることを願って、〜〜ありがとうございました。