Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

WBOY
WBOYnach vorne
2021-12-31 18:02:183617Durchsuche

Dieser Artikel vermittelt Ihnen die Grundkenntnisse des Linux-Betriebssystems, einschließlich Kenntnisse über die Programmentwicklungsumgebung, allgemeine Befehle und Umgebungsvariablen. Ich hoffe, er wird Ihnen hilfreich sein.

Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

1. Einführung in Linux und Programmentwicklungsumgebung

1.1 Was ist Linux?

Linux ist eine frei verteilbare UNIX-ähnliche Kernel-Implementierung. Es ist der zugrunde liegende Kern eines Betriebssystems. Linux wurde von Linus an der Universität Helsinki in Finnland mit Hilfe einer großen Anzahl von UNIX-Programmierern im Internet entwickelt. Es war ursprünglich ein Programm, das vom Minix seines Professors (einem kleinen UNIX-ähnlichen System) inspiriert wurde. Es war ein reines persönliches Hobby, aber später entwickelte es sich nach und nach zu einem vollständigen System. Um zu verstehen, was Linux ist, müssen Sie zunächst Systeme verstehen und Anwendungen, die Linux vorausgingen – UNIX- und GNU-Software.

1.1.1 Was ist UNIX?

Das UNIX-Betriebssystem wurde ursprünglich von Bell Labs entwickelt, das damals zum Telekommunikationsriesen AT&T (American Telegraph and Telephone Company) gehörte. Heute ist es ein sehr beliebtes Mehrbenutzer- und Multitasking-Betriebssystem. Das UNIX-Betriebssystem kann auf einer Vielzahl verschiedener Hardwareplattformen ausgeführt werden, von PCs über Multiprozessorserver bis hin zu Supercomputern.

Es gibt einige typische Stile und Merkmale der Programmentwicklung unter UNIX:

1) Einfachheit: Viele nützliche UNIX-Tools sind sehr einfach. „Klein und einfach“ ist eine erlernbare Technik. Größere, komplexere Systeme enthalten zwangsläufig größere und komplexere Fehler.

2) Zentralisierung: Es ist besser, ein Programm eine Aufgabe gut ausführen zu lassen, als alle Funktionen zusammenzustapeln. Programme mit aufgeblähter Funktionalität sind schwierig zu verwenden und zu warten, und Programme mit nur einem Ziel werden mit größerer Wahrscheinlichkeit verbessert, wenn bessere Algorithmen entwickelt werden. Wenn unter UNIX neue Anforderungen von Benutzern auftreten, kombinieren wir normalerweise kleine Tools, um komplexere Aufgaben zu erledigen, anstatt zu versuchen, alle von einem Benutzer erwarteten Funktionen in einem großen Programm unterzubringen.

3) Wiederverwendbare Komponenten: Implementieren Sie den Kern der Anwendung als Bibliothek. Bibliotheken mit einfachen und flexiblen Programmierschnittstellen können anderen dabei helfen, ähnliche Programme zu entwickeln oder diese Techniken auf neue Anwendungsbereiche anzuwenden.

1.1.2 GNU Project und Free Software Foundation

Der Betriebssystemkernel reicht nicht aus. Die Entwicklung von Linux zu dem, was es heute ist, ist das Ergebnis der gemeinsamen Anstrengungen unzähliger Menschen. Der Betriebssystemkern selbst ist nur ein kleiner Teil der verfügbaren Entwicklungssysteme. Allgemeine UNIX-Systeme umfassen auch Anwendungen, die Systemdienste und -tools bereitstellen. Für Linux-Systeme werden diese Programme von vielen Programmierern geschrieben und frei veröffentlicht.

Die Linux-Community unterstützt das Konzept der freien Software, das heißt, die Software selbst sollte nicht eingeschränkt werden und sie entspricht der GNU (GNU ist die rekursive Abkürzung für GNU’s Not UNIX) General Public License (GPL).

Die Free Software Foundation wurde von Richard Stallman gegründet. Ihr Zweck ist es, ein Betriebssystem und eine Entwicklungsumgebung zu schaffen, die mit UNIX-Systemen kompatibel ist, aber nicht durch UNIX-Namen und Datenschutzrechte für Quellcodes eingeschränkt wird.

Das GNU-Projekt hat der Software-Community viele Imitationen von Anwendungen auf UNIX-Systemen zur Verfügung gestellt. Zum Beispiel die berühmte:

GCC: GNU Compiler Collection, die den GNU C-Compiler enthält.

G++: G++-Compiler, Teil von GCC.

GDB: Debugger auf Quellcodeebene.

GNU make

bash: Befehlsinterpreter (eine Art Shell)

Mit dieser verfügbaren freien Software, gepaart mit dem Linux-Kernel, können wir sagen: Das Ziel, ein GNU, freies UNIX-ähnliches System zu schaffen, wurde erreicht über das Linux-System. Aufgrund der Beiträge der GNU-Software bezeichnen viele Menschen das Linux-System heute üblicherweise als GNU/Linux.

1.2 Programmentwicklungsumgebung

Wenn Sie Ihre Arbeit gut machen wollen, müssen Sie zuerst Ihre Tools schärfen. Wenn Sie Linux-Programme entwickeln möchten, müssen Sie zuerst eine Entwicklungsumgebung erstellen.

1.2.1 Installation der Linux-Umgebung

Die Linux-Entwicklung erfordert die Installation einer Linux-Systemumgebung. Im Allgemeinen wird VMWare zur Installation des Ubuntu-Systems für die Entwicklung verwendet. Informationen zum spezifischen Installationsprozess finden Sie im folgenden Beitrag: https://zhuanlan.zhihu.com/p/38797088. Ich werde hier nicht zu sehr auf die Einführung eingehen.

1.2.2 SSH

Secure Shell (SSH) ist ein sicheres Netzwerkprotokoll, das auf der Anwendungsschicht basiert und von der IETF (The Internet Engineering Task Force) entwickelt wurde. Herkömmliche Netzwerkdienstprogramme wie FTP, Pop und Telnet sind von Natur aus unsicher; da sie Daten, Benutzerkonten und Benutzerkennwörter im Klartext über das Netzwerk übertragen, sind sie leicht anfällig für Man-in-the-Middle-Angriffe.

SSH ist in Client-OpenSH-Client und Server-OpenSH-Server unterteilt. Wir müssen den SSH-Server unter dem Ubuntu-System installieren, um den SSH-Client zum Anmelden am System zu verwenden.


1) SSH installieren ssh start
3) Verwenden Sie den Befehl ip addr show, um die Ubuntu-System-IP anzuzeigen

sudo apt update

sudo apt install openssh-server

2)启动ssh

sudo service ssh start

3)使用ip addr show

Es ist ersichtlich, dass die aktuelle Ubuntu-IP-Adresse 192.168.176.148 lautet.

4) Testen Sie die SSH-Anmeldung.

Verwenden Sie nach der Installation des SSH-Servers unter Ubuntu MobaXterm, um eine Verbindung unter dem Windows-System herzustellen und zu testen, ob der SSH-Server erfolgreich ist installiert. Die Schritte sind wie folgt:
Führen Sie die Xterm-Software aus und wählen Sie „Sitzung“, wie in der Abbildung unten gezeigt:
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

Klicken Sie auf „SSH“ und richten Sie es ein, wie in der Abbildung unten gezeigt:
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

In der Wählen Sie im Dialogfeld „Protokoll“ „SSH“, „Hostname“ die IP-Adresse von Ubuntu und „Benutzername“ den aktuellen Benutzernamen aus. Verwenden Sie den Standardwert 22 für die Portnummer. Nachdem die Einstellungen abgeschlossen sind, klicken Sie auf „OK“. Das folgende Befehlszeilenterminal wird angezeigt, das anzeigt, dass das Ubuntu-System der virtuellen Maschine verbunden wurde.
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

Mit dieser Methode können Sie sich beim Entwicklungsboard anmelden, nachdem Sie bestätigt haben, dass die Netzwerkkommunikation zwischen dem Host und dem Entwicklungsboard normal ist.

5) Visual Studio Code installieren

Visual Studio Code (kurz VSCode) ist ein kostenloser Editor von Microsoft. Es gibt drei Versionen: Windows, Linux und macOS. Es ist ein plattformübergreifender Editor. Sie können selbst nach dem Installationsprozess suchen. Hier stellen wir hauptsächlich die für die C/C++-Programmentwicklung verwendeten Erweiterungspakete vor. Die Installationsschritte sind in der folgenden Abbildung dargestellt:
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

Die folgenden Plug-Ins werden häufig verwendet und müssen verwendet werden installiert werden:

C/C++.

C/C++-Snippets, wiederverwendete C/C++-Codeblöcke.

C/C++ Advanced Lint, also statische C/C++-Erkennung.

Code Runner, also Code, der ausgeführt wird.

Fügen Sie AutoComplete hinzu, d. h. die automatische Einbindung von Header-Dateien.

Regenbogenklammern, Regenbogenklammern, helfen beim Lesen von Code.

One Dark Pro, Thema für VSCode.

GBKtoUTF8, konvertieren Sie GBK in UTF8.

ARM, das die Hervorhebung der ARM-Assembly-Syntax unterstützt.

Chinesisch (vereinfacht), also chinesische Umgebung.

vscode-icons, VSCode-Symbol-Plug-in, hauptsächlich Symbole für jeden Ordner unter dem Ressourcenmanager.

compareit, Vergleichs-Plug-in, kann verwendet werden, um die Unterschiede zwischen zwei Dateien zu vergleichen.

DeviceTree, Gerätebaum-Syntax-Plug-in.

Markdown-Vorschau Erweitertes Markdown-Vorschau-Plug-in.

Maridown pdf, .md-Dateien in andere Formate konvertieren.

2. Gängige Linux-Befehle

Für Anfänger gibt es nicht viele häufig verwendete und sie müssen nicht beherrscht werden. Wenn Sie im täglichen Lern- und Arbeitsprozess auf unbekannte Linux-Befehle stoßen, werden Sie sich diese natürlich merken, indem Sie im Laufe der Zeit weitere Informationen überprüfen. Im Folgenden finden Sie eine Einführung in die 17 grundlegendsten Befehle unter Linux.

1. Löschen Sie den Bildschirm

date

clear

2、查看服务器ip地址

ip addr

3、查看时间

date

4. Verzeichnisse und Dateien

Der Stamm ist das Verzeichnis / (Stammverzeichnis), die Zweige sind Unterverzeichnisse und dahinter befinden sich Zweige Zweige (es gibt auch Unterverzeichnisse im Unterverzeichnis) Verzeichnis), das Ende des Verzeichnisses ist die Datei.


Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechenDie Pfade von Verzeichnissen und Dateien werden in absolute Pfade und relative Pfade unterteilt, die vom Stammverzeichnis (/) aus berechnet werden, z. B. /usr/etc/readme.txt. Der relative Pfad wird aus dem aktuellen Arbeitsverzeichnis berechnet. Wenn das aktuelle Arbeitsverzeichnis /usr ist, entspricht etc/readme.txt /usr/etc/readme.txt. Darüber hinaus ist zu beachten, dass: ein Punkt das aktuelle Arbeitsverzeichnis angibt; zwei Punkte ... das übergeordnete Verzeichnis des aktuellen Arbeitsverzeichnisses angeben.

Das Folgende ist eine kurze Einführung in die Linux-Systemverzeichnisstruktur. Um zu verhindern, dass viele Benutzer wilde Ideen über die Linux-Systemverzeichnisstruktur haben, hat die Linux Foundation den FHS-Standard veröffentlicht. Die meisten Linux-Distributionssysteme folgen diesem Standard. Hinweis: FHS (Filesystem Hierarchy Standard), Dateisystemhierarchiestandard, der die Verwendung aller Verzeichnisse der ersten Ebene und einiger Verzeichnisse der zweiten Ebene (/usr und /var) in Linux-Systemen festlegt. Der Hauptzweck der Veröffentlichung dieses Standards besteht darin, den Benutzern klar zu machen, welche Dateitypen in den einzelnen Verzeichnissen gespeichert werden sollen.


1) Linux-Stammverzeichnis (/)
FHS ist der Ansicht, dass das Stammverzeichnis (/) des Linux-Systems aus den folgenden zwei Gründen am wichtigsten ist:
1. Alle Verzeichnisse werden vom Stammverzeichnis abgeleitet

2. Das Stammverzeichnis steht in engem Zusammenhang mit dem Systemstart, der Reparatur und der Wiederherstellung.
Daher muss das Stammverzeichnis Startsoftware, Kerndateien, für den Start erforderliche Programme, Funktionsbibliotheken, Systemreparaturprogramme und andere Dateien enthalten Tabelle unten.


2) Linux /usr-Verzeichnis

usr (nicht Benutzer), der vollständige Name lautet Unix Software Resource. Dieses Verzeichnis wird zum Speichern von Systemsoftwareressourcen verwendet. FHS empfiehlt Entwicklern, Softwareproduktdaten in Unterverzeichnissen des Verzeichnisses /usr abzulegen, anstatt separate Verzeichnisse für ihre Produkte zu erstellen.
In Linux-Systemen wird die gesamte Systemstandardsoftware im Verzeichnis /usr gespeichert. Das Verzeichnis /usr ähnelt der Kombination aus C:Windows + C:Programmdateien in Windows-Systemen.
FHS empfiehlt, dass das Verzeichnis /usr Unterverzeichnisse haben sollte, wie in der Tabelle unten gezeigt.
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

3) Linux /var-Verzeichnis

/var-Verzeichnis wird zum Speichern dynamischer Daten wie Cache, Protokolldateien, während der Softwareausführung generierter Dateien usw. verwendet. Im Allgemeinen wird empfohlen, dass dieses Verzeichnis die in Tabelle 4 gezeigten Unterverzeichnisse enthält.
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

5. Aktuelles Verzeichnis anzeigen

pwdpwd

6、改变当前工作目录

cd 目录名

示例:

1)进入/tmp目录

cd /tmp

2)进入上一级目录

cd ..

3)进入用户的主目录

cd

7、列出目录和文件信息

ls是list的缩写,通过 ls 命令不仅可以查看目录和文件信息,还可以查看目录和文件的权限、大小、主人和组等信息。
选项 -l 列出目录和文件的详细信息。
示例:

1)列出当前工作目录下全部的目录和文件名信息

ls
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

2)列出当前工作目录下全部的目录和文件名详细的信息

ls -l
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

3)正则表达式

正则表达式又称规则表达式、通配符,目录和文件名都支持正则表达式,正则表达式的规则比较多,在这里我们只需要掌握最常用的两种:星号 “*” 。

星号 “*” :匹配任意数量的字符。

例如:ls open*.zip
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

8、创建目录

1)在当前工作目录下创建aaa目录

mkdir aaa

2)在当前工作目录下创建aaa目录,并在aaa目录下创建bbb目录

mkdir aaa/bbb -p

9、删除目录和文件

rm [-rf]目录或文件

选项-r可以删除目录,如果没有-r只能删除文件。

选项-f表示强制删除,不需要确认。

1)删除aaa目录

rm aaa -r

2)强制删除当前工作目录下的ccc.c文件

rm -f ccc.c

9、移动目录和文件

mv 旧目录或文件名 新目录或文件名

1)把当前工作目录中的 book.c 文件重命名为 book1.c

mv book.c book1.c

2)如果OPC/test3是一个已经存在的目录,以下命令将把当前工作目录下的 book.c 文件移动到 OPC/test3 目录中。

mv book.c OPC/test3

3)如果 OPC/test3目录不存在,以下命令将把当前工作目录下的 book.c 文件改名为 OPC/test3。

mv book.c OPC/test3

10、复制目录和文件

cp [-r] 旧目录或文件名 新目录或文件名

注:-r 是递归的意思,英文 recursion

选项-r可以复制目录,如果没有选项-r只能复制文件。

示例:

1)把当前工作目录下的book1.c文件复制为book2.c

cp book1.c book2.c

2)把当前工作目录下的aaa目录复制为bbb

cp aaa bbb -r

3)把当前工作目录下的book1.c文件复制为aaa/book1.c

cp book1.c aaa/book1.c

cp book1.c aaa/.

以上两个命令的效果相同。

4)把当前工作目录下的aaa目录复制为/tmp/aaa

cp -r aaa /tmp/aaa

🎜6. Aktuelles Arbeitsverzeichnis ändern🎜🎜🎜cd-Verzeichnisname🎜🎜 🎜🎜 1) Geben Sie das /tmp-Verzeichnis ein 🎜🎜🎜cd /tmp🎜🎜🎜2) Geben Sie das übergeordnete Verzeichnis ein 🎜🎜🎜cd ..🎜🎜🎜3 ) Geben Sie das Hauptverzeichnis des Benutzers ein -Befehl Sie können nicht nur Verzeichnis- und Dateiinformationen anzeigen, sondern auch Informationen wie Berechtigungen, Größe, Besitzer und Gruppe von Verzeichnissen und Dateien. 🎜 Option -l listet Verzeichnis- und Dateidetails auf. 🎜 Beispiel: 🎜🎜🎜1) Alle Verzeichnis- und Dateinameninformationen im aktuellen Arbeitsverzeichnis auflisten 🎜🎜🎜ls🎜Bildbeschreibung hier einfügen🎜🎜🎜2) Detaillierte Informationen zu allen Verzeichnissen und Dateinamen im aktuellen Arbeitsverzeichnis auflisten🎜🎜🎜ls - l🎜Bildbeschreibung hier einfügen🎜🎜🎜 3) Reguläre Ausdrücke🎜🎜🎜Reguläre Ausdrücke werden auch als reguläre Ausdrücke bezeichnet. Sowohl Verzeichnis- als auch Dateinamen unterstützen reguläre Ausdrücke. Hier müssen wir nur die beiden am häufigsten verwendeten Typen beherrschen „*“. 🎜🎜Stern „*“: Entspricht einer beliebigen Anzahl von Zeichen. 🎜🎜🎜Zum Beispiel: ls open*.zip🎜Bildbeschreibung hier einfügen🎜🎜🎜8. Erstellen Sie ein Verzeichnis🎜🎜🎜🎜1) Erstellen Sie ein AAA-Verzeichnis im aktuellen Arbeitsverzeichnis🎜🎜🎜mkdir aaa🎜🎜🎜2) Erstellen Sie im aktuellen Arbeitsverzeichnis das AAA-Verzeichnis unter dem Arbeitsverzeichnis und das BBB-Verzeichnis unter dem AAA-Verzeichnis 🎜rm [-rf ]Verzeichnis oder Datei🎜🎜Die Option -r kann das Verzeichnis löschen. Wenn kein -r vorhanden ist, kann nur die Datei gelöscht werden. 🎜🎜Option -f bedeutet erzwungenes Löschen, es ist keine Bestätigung erforderlich. 🎜🎜🎜1) Löschen Sie das AAA-Verzeichnis🎜🎜🎜rm aaa -r🎜🎜🎜2) Löschen Sie die ccc.c-Datei im aktuellen Arbeitsverzeichnis 🎜🎜🎜rm -f ccc .c 🎜🎜🎜9. Verzeichnisse und Dateien verschieben🎜🎜🎜mv altes Verzeichnis oder Dateiname neues Verzeichnis oder Dateiname🎜🎜🎜1) Ersetzen Sie die Datei book.c in der aktuellen Arbeitsverzeichnis Nennen Sie es book1.c🎜🎜🎜mv book.c book1.c🎜🎜🎜2) Wenn OPC/test3 ein vorhandenes Verzeichnis ist, kopiert der folgende Befehl book.c in das aktuelle Arbeitsverzeichnis Verzeichnis Die Datei wird in das Verzeichnis OPC/test3 verschoben. 🎜🎜🎜mv book.c OPC/test3🎜🎜🎜3) Wenn das Verzeichnis OPC/test3 nicht existiert, benennt der folgende Befehl die Datei book.c im aktuellen Arbeitsverzeichnis in OPC/ um. test3. 🎜🎜🎜mv book.c OPC/test3🎜🎜🎜10. Verzeichnisse und Dateien kopieren🎜🎜🎜cp [-r] neues Verzeichnis oder Dateiname🎜🎜Hinweis: -r bedeutet Rekursion🎜🎜🎜 Option -r kann Verzeichnisse kopieren. Wenn es keine Option -r gibt, können nur Dateien kopiert werden . 🎜🎜Beispiel:🎜🎜🎜1) Kopieren Sie die Datei book1.c im aktuellen Arbeitsverzeichnis nach book2.c🎜🎜🎜cp book1.c book2.c🎜🎜🎜2) Kopieren Sie die aktuelle Datei Verzeichnis Kopieren Sie das Verzeichnis aaa unter dem aktuellen Arbeitsverzeichnis nach bbb🎜🎜🎜cp aaa bbb -r🎜🎜🎜3) Kopieren Sie die Datei book1.c im aktuellen Arbeitsverzeichnis nach aaa/book1.c🎜 🎜🎜 cp book1.c aaa/book1.c🎜🎜cp book1.c aaa/.🎜🎜Die beiden oben genannten Befehle haben den gleichen Effekt. 🎜🎜🎜4) Kopieren Sie das Verzeichnis aaa im aktuellen Arbeitsverzeichnis nach /tmp/aaa🎜🎜🎜cp -r aaa /tmp/aaa🎜

cp -r aaa /tmp/.cp -r aaa /tmp/.

以上两个命令的效果相同。

11、判断网络是否连通

ping -c 包的个数 ip地址或域名

ping用于确定本地主机是否能与另一台主机成功交换数据包,判断网络是否通畅。

1)向本地主机(127.0.0.1)ping五个包

ping -c 5 127.0.0.1
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

2)向百度 www.baidu.com.cn 的服务器ping五个包

ping -c 5 www.baidu.com.cn
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

可以看出百度的服务器是可以ping通的。

3)向谷歌 www.google.com 的服务器ping五个包。

ping -c 5 www.google.com
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

可以看出谷歌的服务器是ping不通的。

12、显示文本文件的内容

显示文本文件的内容有三个命令:catmoretail

1)cat 命令

cat 文件名

cat命令一次显示整个文件的内容。

cat main.cpp

2)more 命令

more 文件名

为了方便阅读,more命令分页显示文件的内容,按空格键显示下一页,按b键显上一页,按q键退出。

3)tail 命令

tail -f 文件名

tail -f用于显示文本文件的最后几行,如果文件的内容有增加,就实时的刷新。对程序员来说,tail -f极其重要,可以动态显示后台服务程序的日志,用于调试和跟踪程序的运行。

13、统计文本文件的行数、单词数和字节数

wc(word count)功能为统计指定的文件中字节数、字数、行数,并将统计结果输出

wc 文件名
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

14、搜索文件中的内容

grep "内容" 文件名

注意,如果内容中没有空格等特殊字符,可以不用双引号括起来。

示例:

1)在main.cpp文件中搜索signal

grep signal main.cpp
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

15、搜索文件

1)find

find 目录名 -name 文件名

参数说明:
目录名:待搜索的目录,搜索文件的时候,除了这个目录名,还包括它的各级子目录。
文件名:待搜索的文件名匹配的规则。
示例:
从 OPC 目录开始搜索,把全部的 *.cpp 文件显示出来。

find OPC -name *.cpp

2)locate

locate 文件名

示例:
搜索open62541.c文件

locate open62541.c
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

注意:第一次使用该命令,可能需要更新数据库,按照提示的命令执行一下就好了.

find多用于在某个目录下进行模糊搜索,而locate则是进行全盘准确定位。

16、chmod命令

用于改变linux文件或目录的访问权限。该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。

每一文件或目录的访问权限都有三组,每组用三位表示,分别为文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。

举例:ls -l example
Die beiden oben genannten Befehle haben den gleichen Effekt. Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

11. Bestimmen Sie, ob das Netzwerk verbunden ist

Die Anzahl der Ping-C-Pakete, IP-Adresse oder Domänenname

ping wird zur Bestimmung verwendet ob der lokale Host Datenpakete erfolgreich mit einem anderen Host austauschen kann, um festzustellen, ob das Netzwerk reibungslos funktioniert. 🎜
1) Pingen Sie fünf Pakete an den lokalen Host (127.0.0.1)
🎜ping -c 5 127.0.0.1🎜Bildbeschreibung hier einfügen🎜
2) Zu Baidu www. Die Server von baidu.com.cn pingt fünf Pakete
🎜ping -c 5 www.baidu.com.cn🎜Bildbeschreibung hier einfügen🎜🎜Es ist ersichtlich, dass Baidus Server pingen kann. 🎜
3) Pingen Sie fünf Pakete an den Google-Server www.google.com.
🎜ping -c 5 www.google.com🎜Bildbeschreibung hier einfügen🎜🎜Es ist ersichtlich, dass der Google-Server keinen ping ausführen kann. 🎜

12. Den Inhalt einer Textdatei anzeigen

🎜Es gibt drei Befehle, um den Inhalt einer Textdatei anzuzeigen: cat, mehr und tail. 🎜
1) cat-Befehl
🎜cat-Dateiname🎜🎜cat-Befehl zeigt den Inhalt der gesamten Datei auf einmal an. 🎜🎜cat main.cpp🎜
2) mehr Befehl
🎜mehr Dateiname 🎜🎜Um das Lesen zu erleichtern, zeigt der Befehl „more“ den Inhalt der Datei in Seiten an. Drücken Sie die Leertaste, um die nächste Seite anzuzeigen, drücken Sie die b-Taste, um die vorherige Seite anzuzeigen, und drücken Sie die q-Taste, um den Vorgang zu beenden. 🎜
3) Tail-Befehl
🎜tail -f Dateiname🎜🎜tail -f wird zum Anzeigen von Textdateien verwendet Wenn in den letzten Zeilen der Inhalt der Datei zunimmt, wird er in Echtzeit aktualisiert. Für Programmierer ist tail -f äußerst wichtig. Es kann das Protokoll des Hintergrunddienstprogramms dynamisch anzeigen und zum Debuggen und Verfolgen der Ausführung des Programms verwendet werden. 🎜

13. Zählen Sie die Anzahl der Zeilen, Wörter und Bytes von Textdateien

🎜wc (Wortzählung) dient zum Zählen der Anzahl der Bytes, Wörter und Zeilen in der angegebenen Datei Dateinummer und geben Sie die statistischen Ergebnisse aus. png " alt="Bildbeschreibung hier einfügen"/>🎜

14. Durchsuchen Sie den Inhalt in der Datei

🎜grep "content" Dateiname🎜 🎜 Beachten Sie, dass der Inhalt nicht in doppelte Anführungszeichen gesetzt werden muss, wenn im Inhalt keine Sonderzeichen wie Leerzeichen enthalten sind. 🎜🎜🎜Beispiel: 🎜
1) Signal in der Datei main.cpp suchen
🎜grep signal main.cpp🎜Bildbeschreibung hier einfügen🎜

15. Dateien durchsuchen

1) finden
🎜Verzeichnisname-Namen-Dateinamen finden🎜🎜Parameterbeschreibung: 🎜 Verzeichnisname: das zu durchsuchende Verzeichnis bei der Suche nach Dateien, außer Dies Der Verzeichnisname umfasst auch seine Unterverzeichnisse auf allen Ebenen. 🎜 Dateiname: Regeln, die dem zu durchsuchenden Dateinamen entsprechen. 🎜 Beispiel: 🎜 Starten Sie die Suche aus dem OPC-Verzeichnis und zeigen Sie alle *.cpp-Dateien an. 🎜🎜find OPC -name *.cpp🎜
2) lokalisieren
🎜lokalisieren Sie den Dateinamen🎜🎜Beispiel: 🎜 Datei open62541.c durchsuchen🎜🎜 open62541.c suchen🎜Bild hier einfügen Beschreibung 🎜🎜Hinweis: Wenn Sie diesen Befehl zum ersten Mal verwenden, müssen Sie möglicherweise die Datenbank aktualisieren. Befolgen Sie einfach die Anweisungen und führen Sie ihn aus. 🎜🎜🎜find wird hauptsächlich für die Fuzzy-Suche in einem bestimmten Verzeichnis verwendet, während Locate dies tut Wird für die genaue Positionierung auf ganzer Linie verwendet. 🎜

16. Der chmod-Befehl

🎜 wird verwendet, um die Zugriffsberechtigungen von Linux-Dateien oder -Verzeichnissen zu ändern. Dieser Befehl hat zwei Verwendungszwecke. Bei der einen handelt es sich um eine Texteinstellungsmethode, die Buchstaben und Operatorausdrücke umfasst; bei der anderen handelt es sich um eine numerische Einstellungsmethode, die Zahlen umfasst. 🎜🎜Jede Datei oder jedes Verzeichnis verfügt über drei Gruppen von Zugriffsberechtigungen. Jede Gruppe wird durch drei Ziffern dargestellt. Dies sind die Lese-, Schreib- und Ausführungsberechtigungen des Dateieigentümers Besitzer; das System Lese-, Schreib- und Ausführungsberechtigungen für andere Benutzer in der Datei. 🎜🎜Beispiel: ls -l example🎜🎜🎜🎜Die erste Spalte enthält 10 Positionen und das erste Zeichen gibt den Dateityp an. Im üblichen Sinne ist ein Verzeichnis auch eine Datei. Wenn das erste Zeichen ein Bindestrich ist, bedeutet dies, dass es sich um eine Nicht-Verzeichnisdatei handelt. Wenn es d ist, bedeutet es ein Verzeichnis. Vom zweiten bis zum zehnten Zeichen gibt es insgesamt 9 Zeichen. Eine Gruppe von 3 Zeichen repräsentiert die Berechtigungen von 3 Benutzergruppen für die Datei oder das Verzeichnis. Berechtigungszeichen verwenden eine horizontale Linie, um leere Berechtigungen darzustellen, r steht für schreibgeschützt, w steht für Schreiben und x steht für ausführbar. 🎜

Allgemeine Parameter:

  • -c Wenn Änderungen auftreten, Verarbeitungsinformationen melden

  • -R Alle Dateien im angegebenen Verzeichnis und seinen Unterverzeichnissen verarbeiten

Berechtigungsbereich:

  • u: Verzeichnis oder Datei aktueller Benutzer

  • g: Die aktuelle Gruppe des Verzeichnisses oder der Datei

  • o: Benutzer oder Gruppen außer dem aktuellen Benutzer oder der aktuellen Gruppe des Verzeichnisses oder der Datei

  • a: Alle Benutzer und Gruppe

Berechtigungscode:

  • r: Leseberechtigung, dargestellt durch die Zahl 4

  • w: Schreibberechtigung, dargestellt durch die Zahl 2

  • x: Ausführungsberechtigung, dargestellt durch die Zahl 1

  • - : Löschberechtigungen, dargestellt durch die Zahl 0

  • s : Sonderberechtigungen

Beispiel:

1) Datei löschen Beispiel Alle ausführbaren Benutzerberechtigungen

chmod a-x example chmod a-x example
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

2)给 example 的属主分配读、写、执行(7)的权限,给 example 的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限

chmod 751 example -c
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

3)将aaa目录及其子目录所有文件添加可读权限

chmod u+r,g+r,o+r -R text/ -c
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

17、查看系统磁盘空间

df [-h] [-T]

选项-h以方便阅读的方式显示信息:

df -h
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

选项-T列出文件系统类型:

df -h -T
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

3、Linux环境变量讲解

3.1 环境变量的概念

3.1.1 什么是环境变量?

程序(操作系统命令和应用程序)的执行都需要运行环境,这个环境是由多个环境变量组成的。

3.1.2 环境变量的分类

1)按生效的范围分类。

系统环境变量:公共的,对全部的用户都生效。

用户环境变量:用户私有的、自定义的个性化设置,只对该用户生效。

2)按生存周期分类。

永久环境变量:在环境变量脚本文件中配置,用户每次登录时会自动执行这些脚本,相当于永久生效。

临时环境变量:使用时在Shell中临时定义,退出Shell后失效。

3)Linux环境变量

Linux环境变量也称之为Shell环境量变,以下划线和字母打头,由下划线、字母(区分大小写)和数字组成,习惯上使用大写字母,例如PATH、HOSTNAME、LANG等。

3.2 常用的环境变量

3.2.1 查看环境变量

1)env命令

在Shell下,用env命令查看当前用户全部的环境变量。
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

上图只截取了部分环境变量,并非全部。

注:用env命令的时候,满屏显示了很多环境变量,不方便查看,可以用grep筛选。

env|grep 环境变量名

例如查看环境变量名中包含PATH的环境变量。

env|grep PATH
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

2)echo命令

echo $环境变量名

例如:echo $LANG

3.2.2 常用的环境变量

1)PATH

可执行程序的搜索目录,可执行程序包括Linux系统命令和用户的应用程序,PATH变量的具体用法本文后面的章节中有详细的介绍。

2)LANG

Linux系统的语言、地区、字符集。

echo $LANGBildbeschreibung hier einfügen
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen2) Beispielsweise wird dem Eigentümer „Lesen“ zugewiesen , Schreib- und Ausführungsberechtigungen (7), der Gruppe, in der sich das Beispiel befindet, werden Lese- und Ausführungsberechtigungen (5) zugewiesen, und anderen Benutzern werden Ausführungsberechtigungen (1) zugewiesen

🎜chmod 751 example -c 🎜<img src="https://img.php.cn/upload/article/000/000/067/e82b90d63235e869835aad7e33cb32bb-20.png" alt="Bildbeschreibung hier einfügen">🎜🎜3) Fügen Sie lesbare Berechtigungen hinzu alle Dateien im AAA-Verzeichnis und seinen Unterverzeichnissen🎜🎜<code>chmod u+r,g+r,o+r -R text/ -c🎜Bildbeschreibung hier einfügen🎜

17. Überprüfen Sie den Systemspeicherplatz

🎜df [-h] [-T]🎜🎜Option -h zeigt Informationen in einem leicht lesbaren Format an: 🎜🎜df -h🎜<img src="https://img.php.cn/upload/article/000/000/067/95937c9778bb954936dccf16f688fc5c-22.png" alt="Bildbeschreibung hier einfügen">🎜🎜Optionen -TDateisystemtypen auflisten: 🎜🎜df -h -T🎜Bildbeschreibung hier einfügen🎜

3. Erläuterung der Linux-Umgebungsvariablen

3.1 Das Konzept der Umgebungsvariablen h3>

3.1.1 Was sind Umgebungsvariablen?

🎜Die Ausführung von Programmen (Betriebssystembefehle und Anwendungen) erfordert eine laufende Umgebung, die aus mehreren Umgebungsvariablen besteht. 🎜

3.1.2 Klassifizierung von Umgebungsvariablen

🎜1) Klassifizierung nach dem Wirkbereich. 🎜🎜Systemumgebungsvariablen: öffentlich, wirksam für alle Benutzer. 🎜🎜Benutzerumgebungsvariablen: Benutzerprivate und benutzerdefinierte personalisierte Einstellungen, die nur für diesen Benutzer wirksam sind. 🎜🎜2) Klassifizierung nach Lebenszyklus. 🎜🎜Permanente Umgebungsvariablen: Diese Skripte sind in der Skriptdatei der Umgebungsvariablen konfiguriert und werden bei jeder Benutzeranmeldung automatisch ausgeführt, was einer dauerhaften Wirkung entspricht. 🎜🎜Temporäre Umgebungsvariablen: Werden bei Verwendung vorübergehend in der Shell definiert und werden nach dem Verlassen der Shell ungültig. 🎜🎜3) Linux-Umgebungsvariablen🎜🎜Linux-Umgebungsvariablen werden auch Shell-Umgebungsvariablen genannt. Sie beginnen mit einem Unterstrich und einem Buchstaben und bestehen aus einem Unterstrich, Buchstaben (Groß- und Kleinschreibung beachten) und Zahlen. wie PATH, HOSTNAME, LANG et al. 🎜

3.2 Häufig verwendete Umgebungsvariablen

3.2.1 Umgebungsvariablen anzeigen

🎜1) env-Befehl 🎜🎜unter Shell , Verwenden Sie den Befehl env, um alle Umgebungsvariablen des aktuellen Benutzers anzuzeigen. 🎜[Externer Link Bildübertragung fehlgeschlagen, die Quellseite verfügt möglicherweise über eine Anti- Hotlinking-Mechanismus: Es wird empfohlen, das Bild zu speichern und direkt hochzuladen (img-ZjeYzjJh-1609830692292)(/uploads/knowledge-space/images/m_7b716fdfaf10a18ce41b49f9f3a50739_r.png)]🎜🎜Das obige Bild erfasst nur einen Teil der Umgebung Variablen, nicht alle. 🎜🎜Hinweis: Bei Verwendung des Befehls env werden viele Umgebungsvariablen auf dem Bildschirm angezeigt, deren Anzeige unpraktisch ist. Sie können sie mit grep filtern. 🎜🎜🎜env|grep-Umgebungsvariablenname🎜🎜Überprüfen Sie beispielsweise die Umgebungsvariable, deren Name PATH enthält. 🎜🎜env|grep PATH🎜Hier einfügen Bildbeschreibung „/>🎜🎜2) Echo-Befehl🎜🎜<code>echo $environment variable name</code>🎜🎜Zum Beispiel: <code>echo $LANG</code>🎜<h4><strong>3.2.2 Häufig verwendete Umgebungsvariablen</strong></h4>🎜1) PATH🎜🎜Das Suchverzeichnis für ausführbare Programme umfasst Linux-Systembefehle und Benutzeranwendungen. Die spezifische Verwendung von PATH-Variablen wird in den späteren Kapiteln dieses Artikels beschrieben . Einführung. 🎜🎜2) LANG🎜🎜Die Sprache, Region und der Zeichensatz des Linux-Systems. 🎜🎜<code>echo $LANG</code>🎜🎜🎜<h5>3) HOSTNAME</h5><p>Der Hostname des Servers. </p><p><code>echo $HOSTNAME</code><code>echo $HOSTNAME</code></p><h5>4)SHELL</h5><p>用户当前使用的Shell解析器。</p><p><code>echo $SHELL</code><br/><img src=
5)HISTSIZE

保存历史命令的数目。

6)USER

当前登录用户的用户名。

echo $USER

7)HOME

当前登录用户的主目录。

echo $HOME

8)PWD

当前工作目录。

echo $PWD
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

9)LD_LIBRARY_PATH

C/C++语言动态链接库文件搜索的目录,它不是Linux缺省的环境变量,但对C/C++程序员来说非常重要,具体用法本文后面的章节中有详细的介绍。

3.3 设置环境量

export 变量名='值'

如果环境变量的值没有空格等特殊符号,可以不用单引号包含。

示例:

export PATH=$PATH:.

以上命令为当前shell的环境变量PATH添加.目录(是.)

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:.

以上命令为当前shell的环境变量LD_LIBRARY_PATH添加.目录

采用export设置的环境变量,在退出Shell后就会失效,下次登录时需要重新设置。如果希望环境变量永久生效,需要在登录脚本文件中配置。

3.3.1 系统环境变量

系统环境变量对全部的用户生效,设置系统环境变量有三种方法。

1)在/etc/profile文件中设置。

用户登录时执行/etc/profile文件中设置系统的环境变量。但是,Linux不建议在/etc/profile文件中设置系统环境变量。

2)在/etc/profile.d目录中增加环境变量脚本文件,这是Linux推荐的方法。

/etc/profile在每次启动时会执行 /etc/profile.d下全部的脚本文件。/etc/profile.d比/etc/profile好维护,不想要什么变量直接删除 /etc/profile.d下对应的 shell 脚本即可。

/etc/profile.d目录下有很多脚本文件,例如:

ls /etc/profile.d
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

3)在/etc/bashrc文件中设置环境变量。

该文件配置的环境变量将会影响全部用户使用的bash shell。但是,Linux也不建议在/etc/bashrc文件中设置系统环境变量。

3.3.2 用户环境变量

用户环境变量只对当前用户生效,设置用户环境变量也有多种方法。

在用户的主目录,有几个特别的文件,用ls是看不见的,用ls .bash*可以看见。
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

1).bash_profile(推荐首选)

当用户登录时执行,每个用户都可以使用该文件来配置专属于自己的环境变量。

2).bashrc

当用户登录时以及每次打开新的Shell时该文件都将被读取,不推荐在里面配置用户专用的环境变量,因为每开一个Shell,该文件都会被读取一次,效率肯定受影响。

3).bash_logout

当每次退出系统(退出bash shell)时执行该文件。

4).bash_history

保存了当前用户使用过的历史命令。

3.3.3 环境变量脚本文件的执行顺序

环境变量脚本文件的执行顺序如下:

/etc/profile->/etc/profile.d->/etc/bashrc->用户的.bash_profile->用户的.bashrc

4) SHELL

Der aktuell vom Benutzer verwendete Shell-Parser.

echo $SHELL
 Hier Bildbeschreibung einfügen“/></strong></h3>5) HISTSIZE<h4><strong>Speichern Sie die Anzahl der historischen Befehle. </strong></h4>6) BENUTZER<p></p>Der Benutzername des aktuell angemeldeten Benutzers. <h5></h5><code>echo $USER</code><p></p>7) HOME<h5></h5>Das Home-Verzeichnis des aktuell angemeldeten Benutzers. <p></p><code>echo $HOME</code>🎜🎜8) PWD🎜🎜Aktuelles Arbeitsverzeichnis. 🎜🎜<code>echo $PWD</code><br/><img src=🎜🎜9) LD_LIBRARY_PATH🎜🎜Das Verzeichnis, in dem nach Dateien der C/C++-Sprach-Dynamic-Link-Bibliothek gesucht wird. Es handelt sich nicht um die Standardumgebungsvariable von Linux, ist aber für C/C++-Programmierer sehr wichtig. Spezifisch Verwendung Eine ausführliche Einführung finden Sie in späteren Kapiteln dieses Artikels. 🎜🎜🎜3.3 Umgebungsvariablen festlegen🎜🎜🎜export variable name='value'🎜🎜Wenn der Wert der Umgebungsvariablen keine Sonderzeichen wie Leerzeichen enthält, kann er ohne einfache Anführungszeichen eingefügt werden. 🎜🎜Beispiel: 🎜🎜export PATH=$PATH:.🎜🎜Der obige Befehl fügt ein .directory zur Umgebungsvariablen PATH der aktuellen Shell hinzu (ja.)
🎜🎜export LD_LIBRARY_PATH= $LD_LIBRARY_PATH:.🎜🎜Der obige Befehl fügt das .directory zur Umgebungsvariablen LD_LIBRARY_PATH der aktuellen Shell hinzu.
🎜🎜🎜Die durch Export festgelegte Umgebungsvariable wird nach dem Verlassen der Shell ungültig Beim nächsten Einrichten muss ich mich erneut anmelden. Wenn Sie möchten, dass die Umgebungsvariablen dauerhaft wirksam werden, müssen Sie sie in der Anmeldeskriptdatei konfigurieren. 🎜🎜🎜3.3.1 Systemumgebungsvariablen🎜🎜Systemumgebungsvariablen sind für alle Benutzer wirksam. Es gibt drei Möglichkeiten, Systemumgebungsvariablen festzulegen. 🎜🎜1) In der Datei /etc/profile festlegen. 🎜🎜Wenn sich der Benutzer anmeldet, führen Sie die Datei /etc/profile aus, um die Systemumgebungsvariablen festzulegen. Linux empfiehlt jedoch nicht, Systemumgebungsvariablen in der Datei /etc/profile festzulegen. 🎜🎜2) Fügen Sie die Umgebungsvariablen-Skriptdatei im Verzeichnis /etc/profile.d hinzu. Dies ist die empfohlene Methode für Linux. 🎜🎜/etc/profile führt bei jedem Start alle Skriptdateien unter /etc/profile.d aus. /etc/profile.d ist einfacher zu pflegen als /etc/profile. Wenn Sie keine Variablen möchten, löschen Sie einfach das entsprechende Shell-Skript unter /etc/profile.d. Es gibt viele Skriptdateien im Verzeichnis 🎜🎜/etc/profile.d, zum Beispiel: 🎜🎜ls /etc/profile.d
Bildbeschreibung hier einfügen🎜🎜3) Umgebungsvariablen in der Datei /etc/bashrc festlegen. 🎜🎜Die in dieser Datei konfigurierten Umgebungsvariablen wirken sich auf die von allen Benutzern verwendete Bash-Shell aus. Allerdings empfiehlt Linux auch nicht, Systemumgebungsvariablen in der Datei /etc/bashrc festzulegen. 🎜🎜3.3.2 Benutzerumgebungsvariablen 🎜🎜Benutzerumgebungsvariablen sind nur für den aktuellen Benutzer wirksam. Es gibt viele Möglichkeiten, Benutzerumgebungsvariablen festzulegen. 🎜🎜Im Home-Verzeichnis des Benutzers gibt es mehrere spezielle Dateien, die mit ls unsichtbar sind, aber mit ls .bash* sichtbar sind.
Bildbeschreibung hier einfügen🎜🎜1) . bash_profile (empfohlen) 🎜🎜Wird ausgeführt, wenn sich der Benutzer anmeldet. Jeder Benutzer kann diese Datei verwenden, um seine eigenen Umgebungsvariablen zu konfigurieren. 🎜🎜2).bashrc🎜🎜Diese Datei wird gelesen, wenn sich der Benutzer anmeldet und jedes Mal, wenn eine neue Shell geöffnet wird. Es wird nicht empfohlen, darin benutzerspezifische Umgebungsvariablen zu konfigurieren, da diese Datei jedes Mal gelesen wird Wenn Sie die Schale einmal öffnen, wird die Wirksamkeit definitiv beeinträchtigt. 🎜🎜3).bash_logout🎜🎜Führen Sie diese Datei jedes Mal aus, wenn Sie das System verlassen (die Bash-Shell verlassen). 🎜🎜4).bash_history🎜🎜 speichert die historischen Befehle, die vom aktuellen Benutzer verwendet wurden. 🎜🎜🎜3.3.3 Die Ausführungssequenz von Umgebungsvariablen-Skriptdateien 🎜🎜🎜Die Ausführungssequenz von Umgebungsvariablen-Skriptdateien ist wie folgt: 🎜🎜/etc/profile->/etc/profile.d-> /etc/bashrc ->User's .bash_profile->User's .bashrc🎜🎜Umgebungsvariablen mit demselben Namen. Wenn sie in mehreren Skripten konfiguriert werden, hat die Konfiguration im zuletzt ausgeführten Skript Vorrang. 🎜🎜🎜3.4 Detaillierte Erläuterung wichtiger Umgebungsvariablen🎜🎜🎜🎜1. PATH-Umgebungsvariable🎜🎜🎜Das Suchverzeichnis für ausführbare Programme umfasst Linux-Systembefehle und Benutzeranwendungen. Wenn sich das Verzeichnis des ausführbaren Programms nicht in dem durch PATH angegebenen Verzeichnis befindet, muss das Verzeichnis bei der Ausführung angegeben werden. 🎜🎜1) Die Umgebungsvariable PATH speichert eine Liste von Verzeichnissen. Die Verzeichnisse werden durch einen Doppelpunkt getrennt: und der letzte Punkt gibt das aktuelle Verzeichnis an. 🎜🎜export PATH=Verzeichnis 1: Verzeichnis 2: Verzeichnis 3:… Verzeichnis n:.🎜🎜2) PATH ist standardmäßig das Verzeichnis, in dem sich die Linux-Systembefehle befinden (/usr/local/bin:/usr/bin:/usr /local/sbin:/usr/sbin) Wenn diese Verzeichnisse nicht enthalten sind, können allgemeine Linux-Befehle nicht ausgeführt werden (zur Ausführung muss der absolute Pfad eingegeben werden). 🎜🎜Beispiel: 🎜

ls /bin/ls Sie können sehen, dass sich der Befehl ls im Verzeichnis /bin befindet ls /bin/ls 可以查看到ls命令位于/bin目录下
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

此时我们执行命令 export PATH= 将PATH变量清空,再执行ls命令,系统会提示找不到ls命令。
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

采用绝对路径就可以使用,/bin/ls
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

为环境变量PATH添加/bin目录后,ls也可以执行了。
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

3)如果PATH变量中没有包含圆点.,执行当前目录下的程序需要加./或使用绝对路径。

示例:
在当前目录下执行 example 命令,提示无法执行。
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

将圆点.添加到环境变量PATH之后,便可以执行了。

export PATH=$PATH:.
Lassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen

2、LD_LIBRARY_PATH环境变量

C/C++语言动态链接库文件搜索的目录,它不是Linux缺省的环境变量,但对C/C++程序员来说非常重要。

LD_LIBRARY_PATH环境变量存放的也是目录列表,目录之间用冒号:分隔,最后的圆点.表示当前目录,与PATH的格式相同。

export LD_LIBRARY_PATH=目录1:目录2:目录3:......目录n:.

这个环境变量我们会在下次课讲解Linux静态库与动态库时详细介绍。

3.5 环境变量的生效

1)在Shell下,用export设置的环境变量对当前Shell立即生效,Shell退出后失效。

2)在脚本文件中设置的环境变量不会立即生效,退出Shell后重新登录时才生效,或者用source命令让它立即生效,例如:

source /etc/profileBildbeschreibung hier einfügen

Zu diesem Zeitpunkt führen wir den Befehl export PATH= aus, um die PATH-Variable zu löschen und dann den Befehl ls ausführen, meldet das System, dass der Befehl ls nicht gefunden werden konnte. Bildbeschreibung hier einfügen

Verwenden Sie einfach den absoluten Pfad , /bin/ls

hier Bild einfügen Beschreibung

Nach dem Hinzufügen des /bin-Verzeichnisses zur Umgebungsvariablen PATH kann auch ls ausgeführt werden. Bildbeschreibung hier einfügen

3) Wenn die Die PATH-Variable enthält keinen Punkt. Um das Programm im aktuellen Verzeichnis auszuführen, müssen Sie ./ hinzufügen oder einen absoluten Pfad verwenden.

Beispiel: Das Ausführen des Beispielbefehls im aktuellen Verzeichnis weist darauf hin, dass er nicht ausgeführt werden kann. 🎜Bildbeschreibung hier einfügen🎜🎜Fügen Sie einen Punkt hinzu Umgebungsvariable PATH, Sie können es ausführen. 🎜🎜export PATH=$PATH:.🎜„Bildbeschreibung🎜

🎜2. LD_LIBRARY_PATH Umgebungsvariable🎜

🎜Das Verzeichnis, in dem nach den dynamischen Linkbibliotheksdateien der C/C++-Sprache gesucht wird C/ Sehr wichtig für C++-Programmierer. 🎜🎜Die Umgebungsvariable LD_LIBRARY_PATH speichert auch eine Liste von Verzeichnissen. Die Verzeichnisse werden durch einen Doppelpunkt getrennt: und der letzte Punkt gibt das aktuelle Verzeichnis an, das dasselbe Format wie PATH hat. 🎜🎜export LD_LIBRARY_PATH=Directory 1: Directory 2: Directory 3:... Directory n:.🎜🎜🎜Wir werden diese Umgebungsvariable in der nächsten Lektion erklären, wenn wir statische Linux-Bibliotheken und dynamische Bibliotheken erklären . Detaillierte Einführung. 🎜🎜🎜🎜3.5 Validierung von Umgebungsvariablen 🎜🎜🎜1) Unter Shell werden die mit dem Export festgelegten Umgebungsvariablen sofort auf der aktuellen Shell wirksam und werden nach dem Beenden der Shell ungültig. 🎜🎜2) Die in der Skriptdatei festgelegten Umgebungsvariablen werden nicht sofort wirksam. Sie werden erst wirksam, nachdem Sie die Shell verlassen und sich erneut angemeldet haben, oder verwenden Sie den Quellbefehl, um sie sofort wirksam zu machen, zum Beispiel: 🎜🎜source /etc/profile

🎜🎜🎜3.6 Anwendungserfahrung🎜🎜🎜Obwohl es viele Möglichkeiten gibt, Umgebungsvariablen festzulegen, wird empfohlen, die Systemumgebungsvariablen im Verzeichnis /etc/profile.d zu konfigurieren und Die Benutzerumgebungsvariablen werden im .bash_profile des Benutzers konfiguriert. Die Konfiguration von Umgebungsvariablen in anderen Skriptdateien erhöht den Aufwand für den Systembetrieb und die Wartung und ist fehleranfällig. 🎜🎜Verwandte Empfehlungen: „🎜Linux-Video-Tutorial🎜“🎜🎜

Das obige ist der detaillierte Inhalt vonLassen Sie uns über allgemeine Befehle und Umgebungsvariablen des Linux-Betriebssystems sprechen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen