20 unverzichtbare fortgeschrittene Linux-Befehle für Benutzer der mittleren Ebene
Möglicherweise fanden Sie den ersten Artikel "Nützliche Befehle für Anfänger" sehr hilfreich, da er für Neulinge gedacht war, ist dieser Artikel auf mittlere und fortgeschrittene Benutzer zugeschnitten.
Es behandelt Themen wie das Anpassen der Suche, das Verstehen von Prozessen und deren Beendigung, die Optimierung des Linux-Terminals für die Produktivität und das Kompilieren von C-, C++- und Java-Programmen in einer Unix-ähnlichen Umgebung.
21. Befehl finden
Der Befehl find wird verwendet, um nach Dateien im angegebenen Verzeichnis zu suchen, wobei hierarchisch vom übergeordneten Verzeichnis aus in Unterverzeichnisse gewechselt wird.
find -name *.sh
Mit der Option -name wird zwischen Groß- und Kleinschreibung unterschieden. Sie können die Option -iname verwenden, um Dateien ohne Berücksichtigung der Groß-/Kleinschreibung mit unterschiedlichen Groß-/Kleinschreibungsmustern in der Erweiterung zu finden.
Das * ist ein Platzhalter und durchsucht alle Dateien mit der Erweiterung .sh Sie können einen Dateinamen oder einen Teil des Dateinamens verwenden, um die Ausgabe anzupassen.
find -iname *.SH
Der folgende Befehl wird verwendet, um nach allen Dateien mit der Erweiterung ".tar.gz" im aktuellen Verzeichnis und seinen Unterverzeichnissen einschließlich gemounteter Geräte zu suchen.
find -name *.tar.gz
22. grep-Befehl
Der Befehl grep durchsucht eine angegebene Datei nach Zeilen, die eine Übereinstimmung mit bereitgestellten Zeichenfolgen oder Wörtern enthalten.
In diesem Fall wird es verwendet, um in der Datei '/etc/passwd' nach dem Benutzer 'tecmint' zu suchen.
grep tecmint /etc/passwd
Die Option -i wird verwendet, um nach dem String "TECMINT" (Groß-/Kleinschreibung wird nicht beachtet) in der Datei '/etc/passwd' zu suchen.
grep -i TECMINT /etc/passwd
Die Option -r wird verwendet, um rekursiv nach dem String "127.0.0.1" in der Datei '/etc/hosts' zu suchen.
grep -r "127.0.0.1" /etc/hosts
23. man Befehl
Der man-Befehl ist der manuelle Pager des Systems, der eine Online-Dokumentation für alle möglichen Optionen mit einem Befehl und dessen Verwendung bereitstellt.
Fast alle Linux-Befehle werden mit den entsprechenden Handbuchseiten geliefert. Die folgenden 'man cat' (Handbuchseite für den Befehl cat) und 'man ls' (Handbuchseite für den Befehl ls) zeigen z.B. die Handbuchseiten für einen bestimmten Befehl an.
man cat
man ls
24. ps Befehl
Der Befehl ps gibt den Status laufender Prozesse mit einer eindeutigen ID namens PID an.
ps
Um den Status aller Prozesse zusammen mit der Prozess-ID und der PID aufzulisten, verwenden Sie die Option -A.
ps -A
Der Befehl ps ist sehr nützlich, wenn Sie wissen möchten, welche Prozesse laufen oder manchmal PID benötigen, damit ein Prozess beendet wird. Sie können es mit dem Befehl grep verwenden, um eine benutzerdefinierte Ausgabe zu finden.
ps -A | grep -i ssh
Hier wird ps mit dem Befehl grep weitergeleitet, um eine benutzerdefinierte und relevante Ausgabe unseres Bedarfs zu finden.
25. Befehl töten
Der Befehl kill in Linux ist entscheidend, um nicht reagierende oder irrelevante Prozesse effizient zu beenden. Im Gegensatz zu Windows, wo nach dem Beenden eines Prozesses häufig ein Neustart erforderlich ist, können Sie unter Linux Prozesse beenden und neu starten, ohne das gesamte System neu zu starten.
Wenn Sie beispielsweise das Programm 'firefox' beenden müssen, wenn es nicht reagiert, können Sie den Befehl ps zusammen mit grep verwenden, um die Prozess-pid zu finden, und dann den Befehl 'kill' verwenden, um den Prozess zu stoppen.
ps -A | grep -i firefox
kill 69881
Jedes Mal, wenn Sie einen Prozess erneut ausführen oder ein System starten, wird für jeden Prozess eine neue PID generiert und Sie können mit dem Befehl 'ps' die aktuell laufenden Prozesse und deren PID ermitteln.
Eine andere Möglichkeit, den gleichen Prozess zu beenden, ist.
pkill apache2
Der Befehl kill benötigt die Job-ID/Prozess-ID zum Senden von Signalen, während Sie in pkill die Möglichkeit haben, ein Muster zu verwenden, den Prozessbesitzer anzugeben usw.
26. whereis Befehl
Der Befehl whereis wird verwendet, um die Binär-, Quellen- und Handbuchseiten des Befehls zu suchen.
Zum Beispiel, um die Binär-, Quellen- und Handbuchseiten der Befehle 'ls' und 'kill' zu finden.
whereis ls
whereis kill
Der Befehl whereis ist nützlich, um zu wissen, wo die Binärdateien für die manuelle Bearbeitung installiert sind.
27. systemctl-Befehl
Der Befehl systemctl steuert das Starten, Stoppen, Neustarten, Aktivieren, Deaktivieren und Überprüfen des Status eines Dienstes oder Programms.
sudo systemctl start sshd
sudo systemctl stop sshd
sudo systemctl restart sshd
sudo systemctl enable sshd
sudo systemctl disable sshd
sudo systemctl status sshd
28. Alias-Befehl
Der Alias-Befehl ist ein integrierter Shell-Befehl, mit dem Sie einem langen Befehl oder einem häufig verwendeten Befehl einen Namen zuweisen können.
Ich verwende häufig den Befehl 'ls -l', der aus 5 Zeichen besteht, einschließlich Leerzeichen. Daher habe ich einen Alias dafür als 'l' erstellt.
alias l='ls -l'
Überprüfen Sie, ob es funktioniert oder nicht.
l
Um den Alias 'l' zu entfernen, verwenden Sie den folgenden Befehl 'unalias'.
unalias l
Prüfen Sie, ob 'l' noch ein Alias ist oder nicht.
l
l: command not found
Fügen Sie Linux-Befehlen ein wenig Spaß hinzu, indem Sie Aliase für bestimmte wichtige Befehle zu anderen wichtigen Befehlen erstellen.
alias cd='ls -l' (set alias of ls -l to cd)
alias su='pwd' (set alias of pwd to su)
Stellen Sie sich nun den Humor vor, wenn Ihr Freund den Befehl cd eintippt, in der Erwartung, das Verzeichnis zu wechseln, aber stattdessen eine Verzeichnisliste erhält. Ähnlich verhält es sich, wenn er 'su' versucht, sieht er nur den Speicherort des Arbeitsverzeichnisses.
Sie können den Alias später mit dem Befehl 'unalias' entfernen, wie oben beschrieben.
29. df-Befehl
Der Befehl df wird verwendet, um die Informationen über die Speicherplatznutzung im Dateisystem anzuzeigen. Sie zeigt den gesamten, belegten und verfügbaren Speicherplatz auf jedem gemounteten Dateisystem an.
df -h
Die Option -h wird verwendet, um die Speicherplatznutzung in einem lesbaren Format auszudrucken, das Größen in Gigabyte (GB) und Megabyte (MB) für jedes bereitgestellte Dateisystem auf Ihrem System anzeigt.
30. du Befehl
Der Befehl du wird verwendet, um die Speicherplatznutzung von Dateien und Verzeichnissen anzuzeigen, einschließlich des gesamten Speicherplatzes, der von einer bestimmten Datei oder einem bestimmten Verzeichnis belegt wird, einschließlich des von den Unterverzeichnissen belegten Speicherplatzes.
du -h
Die Option -h wird verwendet, um die Dateiverwendung in einem lesbaren Format zu drucken, das Größen in Gigabyte (GB) und Megabyte (MB) anzeigt.
31. rm Befehl
Der Befehl rm steht für remove, mit dem Dateien und Verzeichnisse dauerhaft aus dem Dateisystem entfernt oder gelöscht werden.
Die grundlegende Syntax zum Entfernen einer Datei lautet:
rm file
Die grundlegende Syntax zum Entfernen eines Verzeichnisses lautet:
rm -rf directory
-r (rekursiv, entfernt Verzeichnisse und deren Inhalt) und -f (erzwingt das Entfernen von Dateien ohne Aufforderung zur Bestätigung).
Der Befehl "rm -rf" ist ein destruktiver Befehl. Wenn Sie es versehentlich im falschen Verzeichnis ausführen, sind alle Dateien und das Verzeichnis selbst dauerhaft verloren.
32. Echo-Befehl
Der Befehl echo gibt, wie der Name schon sagt, ein Echo eines Textes in der Standardausgabe aus. Es hat nichts mit der Shell zu tun, noch liest die Shell die Ausgabe des Befehls echo.
In einem interaktiven Skript leitet jedoch ein Echo die Nachricht über das Terminal an den Benutzer weiter. Es ist einer der Befehle, die häufig beim Scripting und interaktiven Scripting verwendet werden.
echo "linux-console.net is a very good website"
linux-console.net is a very good website
Lassen Sie uns ein kleines interaktives Bash-Skript erstellen, das eine personalisierte Willkommensnachricht auf dem Terminal anzeigt.
#!/bin/bash
echo "Welcome to the Interactive Welcome Script!"
echo "----------------------------------------"
Prompt the user to enter their name
echo "Please enter your name:"
read name
Display a personalized welcome message
echo "Hello, $name! Welcome to the interactive script. Have a great day!"
Speichern Sie dieses Skript in einer Datei, z. B. welcome_script.sh, und machen Sie das Skript mit dem Befehl ausführbar.
chmod +x welcome_script.sh
Dann können Sie es ausführen, indem Sie es in das Terminal eingeben.
./welcome_script.sh
33. passwd-Befehl
Der Befehl passwd wird verwendet, um das eigene Passwort oder das Passwort eines anderen Benutzers zu ändern, wenn er mit den sudo-Rechten ausgeführt wird.
Um beispielsweise das Kennwort für den aktuellen Benutzer zu ändern, geben Sie einfach Folgendes ein:
passwd
Wenn Sie über die sudo-Berechtigungen verfügen, können Sie das Passwort eines anderen Benutzers ändern, indem Sie den Benutzernamen angeben:
sudo passwd username
34. lpr-Befehl
Der Befehl lpr wird zum Senden von Druckaufträgen an einen Drucker verwendet. Es sendet Dateien an die Druckerwarteschlange eines Druckers, sodass Benutzer Dokumente über die Befehlszeile drucken können.
lpr document.txt
Mit dem Befehl 'lpq' können Sie den Status eines Druckers (ob er aktiv ist oder nicht) und die Aufträge (Dateien), die darauf warten, gedruckt zu werden, anzeigen.
35. cmp-Befehl
Der Befehl cmp vergleicht zwei Dateien eines beliebigen Typs und schreibt die Ergebnisse in die Standardausgabe. Standardmäßig gibt 'cmp' 0 zurück, wenn die Dateien identisch sind; Wenn sie sich unterscheiden, wird die Byte- und Zeilennummer angegeben, bei der die erste Differenz aufgetreten ist.
Um Beispiele für den cmp-Befehl bereitzustellen, betrachten wir zwei Dateien:
cat file1.txt
Hi My name is Tecmint
cat file2.txt
Hi My name is tecmint [dot] com
Vergleichen wir nun zwei Dateien und sehen uns die Ausgabe des Befehls an.
cmp file1.txt file2.txt
file1.txt file2.txt differ: byte 15, line 136. wget-Befehl
Der Befehl wget ist ein kostenloses Dienstprogramm für den nicht-interaktiven (d.h. im Hintergrund arbeitenden) Download von Dateien aus dem Internet. Es unterstützt HTTP-, HTTPS-, FTP-Protokolle und HTTP-Proxys.
Um beispielsweise eine Datei mit dem Namen "Server-Health.sh" von einer Website herunterzuladen, verwenden Sie Folgendes:
wget https://linux-console.net/wp-content/scripts/Server-Health.sh
37. mount-Befehl
Der Befehl mount wird verwendet, um ein Dateisystem zu mounten, das sich nicht selbst einhängt. Sie benötigen die Root-Berechtigung, um ein Gerät zu mounten.
Führen Sie zunächst 'lsblk' aus, nachdem Sie Ihr Dateisystem angeschlossen haben, identifizieren Sie Ihr Gerät und notieren Sie sich den zugewiesenen Namen Ihres Geräts.
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931.5G 0 disk
├─sda1 8:1 0 923.6G 0 part /
├─sda2 8:2 0 1K 0 part
└─sda5 8:5 0 7.9G 0 part [SWAP]
sr0 11:0 1 1024M 0 rom
sdb 8:16 1 3.7G 0 disk
└─sdb1 8:17 1 3.7G 0 partVon diesem Bildschirm aus war klar, dass ich einen 4-GB-USB-Stick angeschlossen hatte, also 'sdb1' mein Dateisystem ist, das gemountet werden soll. Werden Sie ein Root, um diesen Vorgang auszuführen, und wechseln Sie in das Verzeichnis /dev, in dem das gesamte Dateisystem eingehängt ist.
su
cd /dev
Erstellen Sie ein Verzeichnis mit dem Namen any, das für die Referenz relevant sein sollte.
mkdir usb
Hängen Sie nun das Dateisystem 'sdb1' in das Verzeichnis 'usb' ein.
mount /dev/sdb1 /dev/usb
Jetzt können Sie vom Terminal oder vom X-Windows-System aus zu /dev/usb navigieren und auf Dateien aus dem bereitgestellten Verzeichnis zugreifen.
38. gcc-Befehl
gcc ist der eingebaute Compiler für die Sprache 'c' in der Linux-Umgebung. Ein einfaches c-Programm, speichern Sie es auf Ihrem Desktop als Hello.c (denken Sie daran, dass die Erweiterung '.c' ein Muss ist).
#include <stdio.h>
int main()
{
printf("Hello world\n");
return 0;
}Kompilieren Sie es als Nächstes und führen Sie es aus.
gcc Hello.c
./a.out
Hello world
Beim Kompilieren eines C-Programms wird die Ausgabe automatisch in eine neue Datei "a.out" erzeugt und jedes Mal, wenn Sie ein C-Programm kompilieren, wird die gleiche Datei "a.out" geändert.
Daher ist es ratsam, während der Kompilierung eine Ausgabedatei zu definieren, damit keine Gefahr besteht, dass die Ausgabedatei überschrieben wird.
gcc -o Hello Hello.c
Hier sendet '-o' die Ausgabe an die 'Hello'-Datei und nicht an 'a.out'.
39. g++ Befehl
g++ ist der eingebaute Compiler für 'C++', die erste objektorientierte Programmiersprache. Ein einfaches C++-Programm, speichern Sie es als Add.cpp auf Ihrem Desktop (denken Sie daran, dass die Erweiterung ".cpp" ein Muss ist).
#include <iostream>
using namespace std;
int main()
{
int a;
int b;
cout<<"Enter first number:\n";
cin >> a;
cout <<"Enter the second number:\n";
cin>> b;
cin.ignore();
int result = a + b;
cout<<"Result is"<<" "<<result<<endl;
cin.get();
return 0;
}
Kompilieren Sie es als Nächstes, und führen Sie es aus.
g++ Add.cpp
./a.out
Enter the first number:
...
...
Beim Kompilieren eines C++-Programms wird die Ausgabe automatisch in eine neue Datei "a.out" generiert und jedes Mal, wenn Sie ein C++-Programm kompilieren, wird dieselbe Datei "a.out" geändert.
Daher ist es ratsam, während der Kompilierung eine Ausgabedatei zu definieren, damit keine Gefahr besteht, dass die Ausgabedatei überschrieben wird.
g++ -o Add Add.cpp
./Add
Enter the first number:
...
...
40. java Befehl
Java ist eine der weltweit am häufigsten verwendeten Programmiersprachen und gilt als schnell, sicher und zuverlässig. Der größte Teil der webbasierten Dienste von heute läuft auf Java.
Erstellen Sie ein einfaches Java-Programm, indem Sie den folgenden Test in eine Datei mit dem Namen tecmint.java einfügen (denken Sie daran, dass die Erweiterung '.java' ein Muss ist).
class tecmint {
public static void main(String[] arguments) {
System.out.println("Tecmint ");
}
}Kompilieren Sie es als Nächstes und führen Sie es aus.
javac tecmint.java
java tecmint
Fast jede Distribution ist mit einem gcc-Compiler ausgestattet, die meisten Distributionen haben eingebaute G++- und Java-Compiler, während einige dies möglicherweise nicht tun. Sie können apt oder yum das benötigte Paket erstellen.
Vergessen Sie nicht, Ihren wertvollen Kommentar und die Art des Artikels, den Sie hier sehen möchten, zu erwähnen. Ich werde bald mit einem interessanten Thema über die weniger bekannten Fakten über Linux zurückkommen.









