Inhaltsverzeichnis
1 Suchen Sie eine Datei anhand ihres Namens
2. Dateien nach Dateinamen suchen, Groß- und Kleinschreibung ignorieren
3. Begrenzen Sie die Tiefe der Suche für das angegebene Verzeichnis mit min Depth und max Depth.
4. Führen Sie den Befehl für die mit dem Suchbefehl gefundene Datei aus.
5 Im Gegensatz dazu werden beim Abgleichen von
6. Dateien mithilfe von Inode-Nummern finden
7. Suchen Sie Dateien basierend auf Dateiberechtigungen
8. Finden Sie alle leeren Dateien (0-Byte-Dateien) im Home-Verzeichnis und in den Unterverzeichnissen
9. Finden Sie die 5 größten Dateien
10. Die Methode zum Suchen der 5 kleinsten Dateien
11. Verwenden Sie -type, um nach Dateien eines bestimmten Dateityps zu suchen
12 Dateien Änderungszeiten vergleichen, um Dateien zu finden
14. Geben Sie Aliasnamen für häufig verwendete Suchvorgänge an.
15. Verwenden Sie den Befehl „Suchen“, um große Paketdateien zu löschen.
Heim Betrieb und Instandhaltung Betrieb und Wartung von Linux Linux findet 15 häufig verwendete Befehle

Linux findet 15 häufig verwendete Befehle

Aug 10, 2017 am 11:10 AM
linux 命令

[Einführung] Zusätzlich zum grundlegenden Vorgang der Suche nach Dateien in einer Verzeichnisstruktur können Sie mit dem Befehl „find“ auch einige praktische Vorgänge ausführen, um Ihre Befehlszeilenreise zu vereinfachen. In diesem Artikel werden 15 Linux-Suchbefehle vorgestellt, die sowohl für Anfänger als auch für Veteranen sehr nützlich sind. Erstellen Sie zunächst

in Ihrem Home-Verzeichnis. Zusätzlich zu grundlegenden Vorgängen wie der Suche nach Dateien in einer Verzeichnisstruktur können Sie auch einige praktische Vorgänge ausführen, um Ihre Befehlszeilenreise zu vereinfachen.

In diesem Artikel werden 15 Linux-Suchbefehle vorgestellt, die sowohl für Anfänger als auch für Veteranen sehr nützlich sind.

Erstellen Sie zunächst die folgende leere Datei in Ihrem Home-Verzeichnis, um das folgende Suchbefehlsbeispiel zu testen.

01 # vim create_sample_files.sh
02 touch MybashProgram.sh
03 touch mycprogram.c
04 touch MyCProgram.c
05 touch Program.c
06  
07 mkdir backup
08 cd backup
09  
10 touch MybashProgram.sh
11 touch mycprogram.c
12 touch MyCProgram.c
13 touch Program.c
14  
15 # chmod +x create_sample_files.sh
16  
17 # ./create_sample_files.sh
18  
19 # ls -R
20 .:
21 backup                  MybashProgram.sh  MyCProgram.c
22 create_sample_files.sh  mycprogram.c      Program.c
23  
24 ./backup:
25 MybashProgram.sh  mycprogram.c  MyCProgram.c  Program.c

1 Suchen Sie eine Datei anhand ihres Namens

Dies ist eine der Befehle finden Grundlegende Verwendung. Das folgende Beispiel zeigt, wie MyCProgram.c als Suchname verwendet wird, um Dateien im aktuellen Verzeichnis und seinen Unterverzeichnissen zu finden.

1 # find -name "MyCProgram.c"
2 ./backup/MyCProgram.c
3 ./MyCProgram.c

2. Dateien nach Dateinamen suchen, Groß- und Kleinschreibung ignorieren

Dies ist eine grundlegende Verwendung des Suchbefehls. Das folgende Beispiel zeigt, wie Sie Dateien im aktuellen Verzeichnis und seinen Unterverzeichnissen finden, indem Sie MyCProgram.c als Suchnamen verwenden und dabei die Groß-/Kleinschreibung ignorieren.

1 # find -iname "MyCProgram.c"
2 ./mycprogram.c
3 ./backup/mycprogram.c
4 ./backup/MyCProgram.c
5 ./MyCProgram.c

3. Begrenzen Sie die Tiefe der Suche für das angegebene Verzeichnis mit min Depth und max Depth.

Suchen Sie die passwd-Datei im Stammverzeichnis und seine Unterverzeichnisse.

1 # find / -name passwd
2 ./usr/share/doc/nss_ldap-253/pam.d/passwd
3 ./usr/bin/passwd
4 ./etc/pam.d/passwd
5 ./etc/passwd

Suchen Sie im Stammverzeichnis und einem Unterverzeichnis eine Ebene tiefer (z. B. Stammverzeichnis – Ebene 1 und ein Unterverzeichnis – Ebene 2)

1 # find -maxdepth 2 -name passwd
2 ./etc/passwd

Suchen Sie nach der passwd-Datei im Stammverzeichnis und seinen Unterverzeichnissen bis zu zwei Ebenen tief (z. B. Stammverzeichnis – Ebene 1 und zwei Unterverzeichnisse – Ebene 2 und 3)

1 # find / -maxdepth 3 -name passwd
2 ./usr/bin/passwd
3 ./etc/pam.d/passwd
4 ./etc/passwd

Suchen Sie nach der passwd-Datei zwischen dem Unterverzeichnis der zweiten Ebene und dem Unterverzeichnis der vierten Ebene.

1 # find -mindepth 3 -maxdepth 5 -name passwd
2 ./usr/bin/passwd
3 ./etc/pam.d/passwd

4. Führen Sie den Befehl für die mit dem Suchbefehl gefundene Datei aus.

Das folgende Beispiel zeigt den Suchbefehl zur Berechnung aller Dateinamen, bei denen die Groß-/Kleinschreibung nicht berücksichtigt wird Prüfsumme für die Datei „MyCProgram.c“. {} wird durch den aktuellen Dateinamen ersetzt.

1 find -iname "MyCProgram.c" -exec md5sum {} ;
2 d41d8cd98f00b204e9800998ecf8427e  ./mycprogram.c
3 d41d8cd98f00b204e9800998ecf8427e  ./backup/mycprogram.c
4 d41d8cd98f00b204e9800998ecf8427e  ./backup/MyCProgram.c
5 d41d8cd98f00b204e9800998ecf8427e  ./MyCProgram.c

5 Im Gegensatz dazu werden beim Abgleichen von

alle Dateien oder Verzeichnisse angezeigt, deren Namen nicht MyCProgram.c sind. Da max Depth 1 ist, werden nur Dateien und Verzeichnisse im aktuellen Verzeichnis angezeigt.

1 find -maxdepth 1 -not -iname "MyCProgram.c"
2 .
3 ./MybashProgram.sh
4 ./create_sample_files.sh
5 ./backup
6 ./Program.c

6. Dateien mithilfe von Inode-Nummern finden

Jede Datei hat eine eindeutige Inode-Nummer, sodass wir sie unterscheiden können Dateien. Erstellen Sie zwei Dateien mit ähnlichen Namen, beispielsweise eine mit nachgestellten Leerzeichen und eine ohne.

1 touch "test-file-name"
2  
3 # touch "test-file-name "
4 [Note: There is a space at the end]
5  
6 # ls -1 test*
7 test-file-name
8 test-file-name

Aus der Ausgabe von ls ist es nicht möglich zu unterscheiden, welche Datei ein nachgestelltes Leerzeichen hat. Mit der Option -i können Sie die Inode-Nummer der Datei sehen und so die beiden Dateien unterscheiden.

1 ls -i1 test*
2 16187429 test-file-name
3 16187430 test-file-name

Sie können die Inode-Nummer im Suchbefehl wie unten gezeigt angeben. Hier benennt der Befehl „find“ eine Datei mit der Inode-Nummer um.

1 find -inum 16187430 -exec mv {} new-test-file-name ;
2  
3 # ls -i1 *test*
4 16187430 new-test-file-name
5 16187429 test-file-name


Sie können diese Technik verwenden, wenn Sie etwas mit einer schlecht benannten Datei wie der oben genannten tun möchten. Die Datei mit dem Namen file?.txt enthält beispielsweise ein Sonderzeichen im Namen. Wenn Sie „rm file?.txt“ ausführen möchten, werden alle drei unten angezeigten Dateien gelöscht. Führen Sie also die folgenden Schritte aus, um die Datei „file?.txt“ zu löschen.

1 ls
2 file1.txt  file2.txt  file?.txt

Finden Sie die Inode-Nummer jeder Datei.

1 ls -i1
2 804178 file1.txt
3 804179 file2.txt
4 804180 file?.txt

lautet wie folgt: Verwenden Sie die Inode-Nummer, um diese Dateinamen mit speziellen Symbolen zu entfernen.

1 find -inum 804180 -exec rm {} ;
2  
3 # ls
4 file1.txt  file2.txt
5 [Note: The file with name "file?.txt" is now removed]

7. Suchen Sie Dateien basierend auf Dateiberechtigungen

Die folgenden Vorgänge sind sinnvoll:

  • Suchen Sie die Datei mit den angegebenen Berechtigungen

  • Ignorieren Sie andere Berechtigungsbits und prüfen Sie, ob sie mit den angegebenen Berechtigungen übereinstimmt

  • Entsprechend den Angaben oktal/ Symbolausdruck-Berechtigungssuche

In diesem Beispiel wird davon ausgegangen, dass das Verzeichnis die folgenden Dateien enthält. Beachten Sie, dass diese Dateien unterschiedliche Berechtigungen haben.

1 ls -l
2 total 0
3 -rwxrwxrwx 1 root root 0 2009-02-19 20:31 all_for_all
4 -rw-r--r-- 1 root root 0 2009-02-19 20:30 everybody_read
5 ---------- 1 root root 0 2009-02-19 20:31 no_for_all
6 -rw------- 1 root root 0 2009-02-19 20:29 ordinary_file
7 -rw-r----- 1 root root 0 2009-02-19 20:27 others_can_also_read
8 ----r----- 1 root root 0 2009-02-19 20:27 others_can_only_read

Datei mit Gruppenleseberechtigungen gefunden. Verwenden Sie den folgenden Befehl, um Dateien im aktuellen Verzeichnis zu finden, die Leseberechtigungen für Benutzer in derselben Gruppe haben, und ignorieren Sie dabei andere Berechtigungen für die Datei.

1 find . -perm -g=r -type f -exec ls -l {} ;
2 -rw-r--r-- 1 root root 0 2009-02-19 20:30 ./everybody_read
3 -rwxrwxrwx 1 root root 0 2009-02-19 20:31 ./all_for_all
4 ----r----- 1 root root 0 2009-02-19 20:27 ./others_can_only_read
5 -rw-r----- 1 root root 0 2009-02-19 20:27 ./others_can_also_read

Suchen Sie nach Dateien mit schreibgeschützten Berechtigungen für Gruppenbenutzer.

1 find . -perm g=r -type f -exec ls -l {} ;
2 ----r----- 1 root root 0 2009-02-19 20:27 ./others_can_only_read

Suchen Sie nach Dateien, die nur Leseberechtigungen für Gruppenbenutzer haben (mithilfe des oktalen Berechtigungsformulars).

1 find . -perm 040 -type f -exec ls -l {} ;
2 ----r----- 1 root root 0 2009-02-19 20:27 ./others_can_only_read

8. Finden Sie alle leeren Dateien (0-Byte-Dateien) im Home-Verzeichnis und in den Unterverzeichnissen

Die meisten Ausgabedateien der folgenden Befehle sind gesperrte Dateiboxen Von anderen Programmen erstellte Hoders

1 find ~ -empty

listen nur leere Dateien in Ihrem Home-Verzeichnis auf.

1 find . -maxdepth 1 -empty


Es werden nur nicht versteckte leere Dateien im aktuellen Verzeichnis aufgelistet.

1 find . -maxdepth 1 -empty -not -name ".*"

9. Finden Sie die 5 größten Dateien

Der folgende Befehl listet die 5 größten Dateien im aktuellen Verzeichnis und in den Unterverzeichnissen auf. Dies kann eine Weile dauern, abhängig von der Anzahl der Dateien, die der Befehl verarbeiten muss.

1 find . -type f -exec ls -s {} ; | sort -n -r | head -5

10. Die Methode zum Suchen der 5 kleinsten Dateien

ähnelt der Methode zum Suchen der 5 größten Dateien. Der Unterschied besteht darin, dass die Sortierreihenfolge absteigend ist.

1 find . -type f -exec ls -s {} ; | sort -n  | head -5

Im obigen Befehl ist es sehr wahrscheinlich, dass Sie nur eine leere Datei (0-Byte-Datei) sehen. Sie können also den folgenden Befehl verwenden, um die kleinsten Dateien anstelle von 0-Byte-Dateien aufzulisten.

1 find . -not -empty -type f -exec ls -s {} ; | sort -n  | head -5

11. Verwenden Sie -type, um nach Dateien eines bestimmten Dateityps zu suchen

Nur ​​nach Socket-Dateien suchen

1 find . -type s

Nach allen Verzeichnissen suchen

1 find . -type d

Alle allgemeinen Dateien finden

1 find . -type f

Alle versteckten Dateien finden

1 find . -type f -name ".*"

Alle versteckten Verzeichnisse finden

1 find -type d -name ".*"

12 Dateien Änderungszeiten vergleichen, um Dateien zu finden

Zeigt Dateien an, die nach der angegebenen Datei geändert wurden. Der folgende Suchbefehl zeigt alle Dateien an, die nach „ordinary_file“ erstellt und geändert wurden. 13. Dateien nach Dateigröße suchen

01 ls -lrt
Verwenden Sie die Option -size, um Dateien nach Dateigröße zu suchen.
02 total 0
03 -rw-r----- 1 root root 0 2009-02-19 20:27 others_can_also_read
Dateien suchen, die größer als die angegebene Datei sind
04 ----r----- 1 root root 0 2009-02-19 20:27 others_can_only_read
05 -rw------- 1 root root 0 2009-02-19 20:29 ordinary_file

Dateien suchen, die kleiner als die angegebene Datei sind

1 find ~ -size -100M

Dateien finden, die der angegebenen Größe entsprechen

1 find ~ -size 100M

Hinweis: – bedeutet kleiner als die angegebene Größe, + bedeutet kleiner als die angegebene Größe Größe Große Größe. Kein Symbol zeigt genau die gleiche Größe wie eine bestimmte Größe an.

14. Geben Sie Aliasnamen für häufig verwendete Suchvorgänge an.

Wenn Sie etwas Nützliches finden, können Sie ihm einen Aliasnamen zuweisen. Und führen Sie es überall aus, wo Sie wollen.

Wird häufig zum Löschen von a.out-Dateien verwendet.

1 alias rmao="find . -iname a.out -exec rm {} ;"
2 # rmao

Löschen Sie die vom C-Programm generierte Kerndatei.

1 alias rmc="find . -iname core -exec rm {} ;"
2 # rmc

15. Verwenden Sie den Befehl „Suchen“, um große Paketdateien zu löschen.

Der folgende Befehl löscht *.zip-Dateien, die größer als 100 MB sind.

1 find / -type f -name *.zip -size +100M -exec rm -i {} ;"

Verwenden Sie den Alias ​​rm100m, um alle *.tar-Dateien von Heavy Rain 100M zu löschen. Mit der gleichen Idee können Sie einen Kategorienamen von rm1g, rm2g und rm5g erstellen, um alle Dateien zu löschen, die größer als 1G, 2G und 5G sind.

1 alias rm100m="find / -type f -name *.tar -size +100M -exec rm -i {} ;"
2 # alias rm1g="find / -type f -name *.tar -size +1G -exec rm -i {} ;"
3 # alias rm2g="find / -type f -name *.tar -size +2G -exec rm -i {} ;"
4 # alias rm5g="find / -type f -name *.tar -size +5G -exec rm -i {} ;"
5  
6 # rm100m
7 # rm1g
8 # rm2g
9 # rm5g

Befehlsbeispiel finden (Teil 2)

Das obige ist der detaillierte Inhalt vonLinux findet 15 häufig verwendete Befehle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was nutzt Linux am meisten? Was nutzt Linux am meisten? Apr 09, 2025 am 12:02 AM

Linux wird häufig in Servern, eingebetteten Systemen und Desktopumgebungen verwendet. 1) Im Serverfeld ist Linux aufgrund seiner Stabilität und Sicherheit eine ideale Wahl für das Hosting von Websites, Datenbanken und Anwendungen geworden. 2) In eingebetteten Systemen ist Linux für seine hohe Anpassung und Effizienz beliebt. 3) In der Desktop -Umgebung bietet Linux eine Vielzahl von Desktop -Umgebungen, um den Anforderungen verschiedener Benutzer gerecht zu werden.

Interviewfragen von CentOS: Ace Ihr Linux -Systemadministratorinterview ACE Interviewfragen von CentOS: Ace Ihr Linux -Systemadministratorinterview ACE Apr 09, 2025 am 12:17 AM

Zu den häufig gestellten Fragen und Antworten auf das CentOS -Interview gehören: 1.. Verwenden Sie den Befehl yum oder dnf, um Softwarepakete wie Sudoyumininstallnginx zu installieren. 2. Verwalten Sie Benutzer und Gruppen über UserAdd- und GroupAdd-Befehle wie Sudouseradd-S/bin/bashnewuser. 3.. Verwenden Sie Firewalld, um die Firewall wie Sudofirewall-CMD-Permanent-Add-Service = http zu konfigurieren. 4. Setzen Sie automatische Updates für die Verwendung von Yum-Cron, z.

Wie lerne ich Linux -Grundlagen? Wie lerne ich Linux -Grundlagen? Apr 10, 2025 am 09:32 AM

Zu den Methoden für das grundlegende Linux -Lernen von Grund zu Grund gehören: 1. Verstehen Sie das Dateisystem und die Befehlszeilenschnittstelle, 2. Master Basic -Befehle wie LS, CD, MKDIR, 3. Lernen Sie Dateivorgänge wie Erstellen und Bearbeiten von Dateien, 4. Erklären Sie fortgeschrittene Verwendung wie Pipelines und GREP -Befehle, 5.

Key Linux -Operationen: Ein Anfängerhandbuch Key Linux -Operationen: Ein Anfängerhandbuch Apr 09, 2025 pm 04:09 PM

Linux -Anfänger sollten grundlegende Vorgänge wie Dateiverwaltung, Benutzerverwaltung und Netzwerkkonfiguration beherrschen. 1) Dateiverwaltung: Verwenden Sie MKDIR-, Touch-, LS-, RM-, MV- und CP -Befehle. 2) Benutzerverwaltung: Verwenden Sie die Befehle von UserAdd-, PassWD-, UserDel- und UsMod -Befehlen. 3) Netzwerkkonfiguration: Verwenden Sie IFConfig-, Echo- und UFW -Befehle. Diese Vorgänge sind die Grundlage für das Linux -Systemmanagement, und das Beherrschen kann das System effektiv verwalten.

So starten Sie den Server mit Redis So starten Sie den Server mit Redis Apr 10, 2025 pm 08:12 PM

Zu den Schritten zum Starten eines Redis -Servers gehören: Installieren von Redis gemäß dem Betriebssystem. Starten Sie den Redis-Dienst über Redis-Server (Linux/macOS) oder redis-server.exe (Windows). Verwenden Sie den Befehl redis-cli ping (linux/macOS) oder redis-cli.exe ping (Windows), um den Dienststatus zu überprüfen. Verwenden Sie einen Redis-Client wie Redis-Cli, Python oder Node.js, um auf den Server zuzugreifen.

So verwenden Sie ein einzelnes Gewinde -Redis So verwenden Sie ein einzelnes Gewinde -Redis Apr 10, 2025 pm 07:12 PM

Redis verwendet eine einzelne Gewindearchitektur, um hohe Leistung, Einfachheit und Konsistenz zu bieten. Es wird E/A-Multiplexing, Ereignisschleifen, nicht blockierende E/A und gemeinsame Speicher verwendet, um die Parallelität zu verbessern, jedoch mit Einschränkungen von Gleichzeitbeschränkungen, einem einzelnen Ausfallpunkt und ungeeigneter Schreib-intensiver Workloads.

Die 5 Säulen von Linux: Verständnis ihrer Rollen Die 5 Säulen von Linux: Verständnis ihrer Rollen Apr 11, 2025 am 12:07 AM

Die fünf Säulen des Linux -Systems sind: 1. Kernel, 2. Systembibliothek, 3. Shell, 4. Dateisystem, 5. Systemwerkzeuge. Der Kernel verwaltet Hardware -Ressourcen und bietet grundlegende Dienste an. Die Systembibliothek bietet vorkompilierte Funktionen für Anwendungen. Die Shell ist die Schnittstelle, in der Benutzer mit dem System interagieren können. Das Dateisystem organisiert und speichert Daten. und Systemwerkzeuge werden für das Systemmanagement und die Wartung verwendet.

Wo ist der Redis -Neustart -Service? Wo ist der Redis -Neustart -Service? Apr 10, 2025 pm 02:36 PM

So starten Sie den Redis-Dienst in verschiedenen Betriebssystemen neu: Linux/macOS: Verwenden Sie den SystemCTL-Befehl (SystemCTL Neustart REDIS-Server) oder den Servicebefehl (Service Redis-Server-Neustart). Windows: Verwenden Sie das Tool von Services.msc (Geben Sie "Services.msc" im Dialogfeld Ausführen und drücken Sie die Eingabetaste) und klicken Sie mit der rechten Maustaste auf den Dienst "Redis" und wählen Sie "Neustart".

See all articles