GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux für Anfänger:10 weitere Befehle zum Manipulieren von Dateien

Falls Sie das erste Segment dieser zweiteiligen Serie verpasst haben, haben wir uns 10 Befehle angesehen, um Ihnen den Einstieg am Terminal zu erleichtern. Jetzt werden wir 10 zusätzliche Befehle untersuchen, die Sie verwenden können, um Ihre Reise über die Befehlszeile fortzusetzen. Insbesondere möchte ich mir die Befehle ansehen, die zum Manipulieren von Dateien verwendet werden. Wir werden Dateien kopieren, verschieben und umbenennen sowie einige Befehle zum Lesen von Dateien auf unterschiedliche Weise.

Wissenswerte Befehle

1. cp Datei1 Datei2

Die Kopie Der Befehl wird verwendet, um den Inhalt einer Datei in eine andere zu kopieren. Sie können diesen Befehl auch verwenden, um eine Datei von einem Verzeichnis in ein anderes zu kopieren.

[tcarrigan@server community_content]$ ls -l
total 36
-rw-rw-r--. 1 tcarrigan tcarrigan    5 Feb  6  2020 article
-rw-rw-r--. 1 root      tcarrigan    5 Feb  6  2020 article2
-rw-rw-r--. 1 root      tcarrigan    5 Feb  6  2020 article3
-rw-rw-r--. 1 tcarrigan tcarrigan    5 Feb  6  2020 article4
-rw-rw-r--. 1 tcarrigan tcarrigan 6404 Apr  7  2020 podman_pulling
-rw-rw-r--. 1 tcarrigan tcarrigan 8824 Apr  7  2020 real_sysadmins
[tcarrigan@server community_content]$ cp podman_pulling article
[tcarrigan@server community_content]$ ls -l
total 40
-rw-rw-r--. 1 tcarrigan tcarrigan 6404 Oct 26 19:11 article
-rw-rw-r--. 1 root      tcarrigan    5 Feb  6  2020 article2
-rw-rw-r--. 1 root      tcarrigan    5 Feb  6  2020 article3
-rw-rw-r--. 1 tcarrigan tcarrigan    5 Feb  6  2020 article4
-rw-rw-r--. 1 tcarrigan tcarrigan 6404 Apr  7  2020 podman_pulling
-rw-rw-r--. 1 tcarrigan tcarrigan 8824 Apr  7  2020 real_sysadmins

Wie Sie sehen, habe ich das podman_pulling kopiert Artikelinhalte zum Artikel Datei. Mit diesem Befehl können Sie außerdem eine vorhandene Datei in ein anderes Verzeichnis kopieren. Wenn ich zum Beispiel den podman_pulling kopieren wollte Artikel in mein Home-Verzeichnis, würde ich so etwas tun:

[tcarrigan@server community_content]$ cp podman_pulling /home/tcarrigan/
** Navigate to /home/tcarrigan **
[tcarrigan@server ~]$ ls -l
total 8
drwxrwxr-x. 4 tcarrigan tcarrigan   50 Feb  6  2020 article_submissions
drwxr-xr-x. 2 tcarrigan tcarrigan    6 Jan 27  2020 Desktop
drwxr-xr-x. 2 tcarrigan tcarrigan    6 Jan 27  2020 Documents
drwxr-xr-x. 2 tcarrigan tcarrigan    6 Jan 27  2020 Downloads
drwxr-xr-x. 2 tcarrigan tcarrigan    6 Jan 27  2020 Music
drwxr-xr-x. 2 tcarrigan tcarrigan    6 Jan 27  2020 Pictures
-rw-rw-r--. 1 tcarrigan tcarrigan 6404 Oct 26 19:17 podman_pulling
drwxr-xr-x. 2 tcarrigan tcarrigan    6 Jan 27  2020 Public
drwxr-xr-x. 2 tcarrigan tcarrigan    6 Jan 27  2020 Templates
drwxr-xr-x. 2 tcarrigan tcarrigan    6 Jan 27  2020 Videos

Sie können dieses podman_pulling sehen ist jetzt in meinem /home/tcarrigan verfügbar Verzeichnis.

[Das könnte Ihnen auch gefallen: 10 praktische systemd-Befehle:Eine Referenz]

2. mv Datei1 Datei2

Der Umzug Der Befehl ermöglicht es einem Benutzer, eine Datei zu verschieben oder umzubenennen. Um eine Datei zu verschieben, würden Sie Folgendes verwenden:

[tcarrigan@server ~]$ mv podman_pulling article_submissions/my_articles/
[tcarrigan@server ~]$ ls -l article_submissions/my_articles/
total 20
-rw-rw-r--. 1 tcarrigan tcarrigan 4442 Apr  7  2020 Creating_physical_volumes
-rw-rw-r--. 1 tcarrigan tcarrigan 2744 Apr  7  2020 Creating_volume_groups
-rw-rw-r--. 1 tcarrigan tcarrigan 6404 Oct 26 19:17 podman_pulling

Ich habe das podman_pulling verschoben Artikel aus meinem Home-Verzeichnis nach /article_submissions/my_articles . Nehmen wir nun an, wir müssten den Artikel von „podman_pulling“ umbenennen " zu "rootless podman ." Wie würden wir das machen?

[tcarrigan@server my_articles]$ mv podman_pulling rootless_podman
[tcarrigan@server my_articles]$ ls -l
total 20
-rw-rw-r--. 1 tcarrigan tcarrigan 4442 Apr  7  2020 Creating_physical_volumes
-rw-rw-r--. 1 tcarrigan tcarrigan 2744 Apr  7  2020 Creating_volume_groups
-rw-rw-r--. 1 tcarrigan tcarrigan 6404 Oct 26 19:17 rootless_podman

3. ln -s Dateilink

Der Link Der Befehl in diesem Kontext ermöglicht es uns, einen Softlink oder symbolischen Link zu einer anderen Datei oder einem anderen Verzeichnis zu erstellen. Weitere Informationen zu diesem Thema finden Sie in meinem vorherigen Artikel Linking Linux . Im Moment werde ich nur demonstrieren, wie man den Softlink-Befehl verwendet.

[tcarrigan@server ~]$ ln -s article_submissions/community_content/podman_pulling podman_article
[tcarrigan@server ~]$ ls -l
total 0
drwxrwxr-x. 4 tcarrigan tcarrigan 50 Feb  6  2020 article_submissions
drwxr-xr-x. 2 tcarrigan tcarrigan  6 Jan 27  2020 Desktop
drwxr-xr-x. 2 tcarrigan tcarrigan  6 Jan 27  2020 Documents
drwxr-xr-x. 2 tcarrigan tcarrigan  6 Jan 27  2020 Downloads
drwxr-xr-x. 2 tcarrigan tcarrigan  6 Jan 27  2020 Music
drwxr-xr-x. 2 tcarrigan tcarrigan  6 Jan 27  2020 Pictures
lrwxrwxrwx. 1 tcarrigan tcarrigan 52 Oct 27 13:51 podman_article -> article_submissions/community_content/podman_pulling
drwxr-xr-x. 2 tcarrigan tcarrigan  6 Jan 27  2020 Public
drwxr-xr-x. 2 tcarrigan tcarrigan  6 Jan 27  2020 Templates
drwxr-xr-x. 2 tcarrigan tcarrigan  6 Jan 27  2020 Videos

Dadurch wird in meinem Home-Verzeichnis ein Link zu /home/tcarrigan/article_submissions/community_content/podman_pulling erstellt Datei, was bedeutet, dass Sie podman_article lesen können , und es öffnet die Datei im community_content Verzeichnis.

4. touch-Datei

Verwenden Sie die Berührung Befehl zum Erstellen oder Aktualisieren einer Datei (hier erstelle ich new_file in my_articles Verzeichnis).

[tcarrigan@server my_articles]$ touch new_file
[tcarrigan@server my_articles]$ ls -l
total 20
-rw-rw-r--. 1 tcarrigan tcarrigan 4442 Apr  7  2020 Creating_physical_volumes
-rw-rw-r--. 1 tcarrigan tcarrigan 2744 Apr  7  2020 Creating_volume_groups
-rw-rw-r--. 1 tcarrigan tcarrigan    0 Oct 28 16:47 new_file
-rw-rw-r--. 1 tcarrigan tcarrigan 6404 Oct 26 19:17 rootless_podman

Beachten Sie, dass der Zeitstempel der erstellten Datei 16:47 ist. Ich werde jetzt die Berührung verwenden Befehl, um den Zeitstempel auf die aktuelle Zeit (19:35 Uhr) zu aktualisieren.

[tcarrigan@server my_articles]$ touch new_file 
[tcarrigan@server my_articles]$ ls -l
total 20
-rw-rw-r--. 1 tcarrigan tcarrigan 4442 Apr  7  2020 Creating_physical_volumes
-rw-rw-r--. 1 tcarrigan tcarrigan 2744 Apr  7  2020 Creating_volume_groups
-rw-rw-r--. 1 tcarrigan tcarrigan    0 Oct 28 19:35 new_file
-rw-rw-r--. 1 tcarrigan tcarrigan 6404 Oct 26 19:17 rootless_podman

5. cat> Datei

Dieser Befehl wird verwendet, um die Standardausgabe in eine Datei einzugeben. Ich gebe "Hello World" in die Datei test_file ein .

[tcarrigan@server ~]$ cat > test_file
Hello World 

Verwenden Sie Strg+D* um die Bearbeitung der Datei abzuschließen. Um Ihre Arbeit anzuzeigen, können Sie den standardmäßigen cat filename verwenden Syntax.

[tcarrigan@server ~]$ cat test_file 
Hello World

6. weitere Datei

Je mehr Der Befehl ermöglicht es dem Benutzer, den Inhalt einer Datei Bildschirm für Bildschirm anzuzeigen. Hier sehen wir uns die /article_submissions/my_articles/creating_physical_volumes an Datei.

#  How to create a physical volume in Linux using LVM
by Tyler Carrigan

Physical volumes `PV` are the base 'block' that you need in order to manipulate a disk using Logical Volume Manager `LVM`. Now, let's not rush ahead. What exactly is a physical volume? What in the world i
s LVM? In short, LVM is a type of storage virtualization that allows operators far more flexibility in storage management than standard partitioning. A physical volume is any physical storage device, such
 as an Hard Disk Drive `HDD`, Solid State Drive `SSD`, or partition, that has been initialized as a physical volume with LVM. Without properly initialized physical volumes, you cannot create Volume Groups
 or logical volumes. 

So lets get started! First, there are a few considerations.

Dont try to pinpoint the exact amount of space you need down to the nearest byte. The reason for this is that LVM places labels on the physical volumes `UUID` as well as metadata storage. While this doesn
t take up very much space, understand that if you initialize a 1Gb PV, you do **not** have 1Gb of *usable* space.
** Output Omitted **

Mit der Enter können Sie Zeile für Zeile gehen Taste oder seitenweise mit Leertaste . Eine weitere hilfreiche Option ist die -Nummer Option, mit der Sie die Anzahl der pro Seite angezeigten Zeilen angeben können.

Um jeweils 10 Zeilen anzuzeigen, können Sie more -10 filename verwenden . Sie können das + verwenden Zeichen, um anzugeben, ab welcher Zeile begonnen werden soll:more +10 filename .

7. weniger Datei

Je weniger Befehl ermöglicht dem Benutzer die gleiche Funktionalität wie more . Es ist jedoch schneller, da es nicht die gesamte Datei lädt, sondern es dem Benutzer stattdessen ermöglicht, die Datei mit den Pfeiltasten zu analysieren. Dies macht sich besonders bei großen Protokolldateien bemerkbar.

[tcarrigan@server my_articles]$ sudo less /var/log/messages
Oct 26 19:50:47 server dbus-daemon[939]: [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.service' requested by ':1.15' (uid=0 pid=1155 comm="/usr/sbin/NetworkManager --no-daemon " label="system_u:system_r:NetworkManager_t:s0")
Oct 26 19:50:47 server systemd[1]: Starting Network Manager Script Dispatcher Service...
Oct 26 19:50:47 server dbus-daemon[939]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
Oct 26 19:50:47 server systemd[1]: Started Network Manager Script Dispatcher Service.
** Output Omitted **

8. Head-Datei

Der Kopf Der Befehl ermöglicht es einem Benutzer, die ersten 10 Zeilen einer beliebigen Datei auszugeben. Ich werde das Beispiel von creating_physical_volumes verwenden .

[tcarrigan@server my_articles]$ head Creating_physical_volumes
#  How to create a physical volume in Linux using LVM
by Tyler Carrigan

Physical volumes `PV` are the base 'block' that you need in order to manipulate a disk using Logical Volume Manager `LVM`. Now, let's not rush ahead. What exactly is a physical volume? What in the world is LVM? In short, LVM is a type of storage virtualization that allows operators far more flexibility in storage management than standard partitioning. A physical volume is any physical storage device, such as an Hard Disk Drive `HDD`, Solid State Drive `SSD`, or partition, that has been initialized as a physical volume with LVM. Without properly initialized physical volumes, you cannot create Volume Groups or logical volumes. 

So lets get started! First, there are a few considerations.

Dont try to pinpoint the exact amount of space you need down to the nearest byte. The reason for this is that LVM places labels on the physical volumes `UUID` as well as metadata storage. While this doesnt take up very much space, understand that if you initialize a 1Gb PV, you do **not** have 1Gb of *usable* space. 

Also, although LVM allows you to create physical volumes using multiple partitions, it is recommended that you use a single partition for a PV. This is for a couple of reasons. 
[tcarrigan@server my_articles]$

9. tail-Datei

Der Schwanz Der Befehl ermöglicht es dem Benutzer, die letzten 10 Zeilen einer beliebigen Datei anzuzeigen. Hier sehen wir uns /var/log/messages an .

[tcarrigan@server my_articles]$ sudo tail /var/log/messages
[sudo] password for tcarrigan:  
Oct 28 20:17:47 server org.gnome.Shell.desktop[2053]: Window manager warning: last_user_time (9080279) is greater than comparison timestamp (9080269).  This most likely represents a buggy client sending inaccurate timestamps in messages such as _NET_ACTIVE_WINDOW.  Trying to work around...
Oct 28 20:17:47 server org.gnome.Shell.desktop[2053]: Window manager warning: W1 appears to be one of the offending windows with a timestamp of 9080279.  Working around...
Oct 28 20:17:48 server dbus-daemon[948]: [system] Activating via systemd: service name='net.reactivated.Fprint' unit='fprintd.service' requested by ':1.500' (uid=0 pid=5259 comm="sudo tail /var/log/messages " label="unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023")
Oct 28 20:17:48 server systemd[1]: Starting Fingerprint Authentication Daemon...
Oct 28 20:17:49 server dbus-daemon[948]: [system] Successfully activated service 'net.reactivated.Fprint'
Oct 28 20:17:49 server systemd[1]: Started Fingerprint Authentication Daemon.
Oct 28 20:17:53 server org.gnome.Shell.desktop[2053]: Window manager warning: last_user_time (9086680) is greater than comparison timestamp (9086677).  This most likely represents a buggy client sending inaccurate timestamps in messages such as _NET_ACTIVE_WINDOW.  Trying to work around...
Oct 28 20:17:53 server org.gnome.Shell.desktop[2053]: Window manager warning: W1 appears to be one of the offending windows with a timestamp of 9086680.  Working around...
Oct 28 20:18:00 server org.gnome.Shell.desktop[2053]: Window manager warning: last_user_time (9093426) is greater than comparison timestamp (9093424).  This most likely represents a buggy client sending inaccurate timestamps in messages such as _NET_ACTIVE_WINDOW.  Trying to work around...
Oct 28 20:18:00 server org.gnome.Shell.desktop[2053]: Window manager warning: W1 appears to be one of the offending windows with a timestamp of 9093426.  Working around...
[tcarrigan@server my_articles]$ 

10. tail -f Datei

Das -f Variante des Schwanzes Befehl ist eine völlig andere Version des ursprünglichen Befehls. Dieses Flag ermöglicht es dem Benutzer, die Datei zu sehen, während sie geschrieben wird. Dies ist unglaublich nützlich, um Probleme beim Starten/Herunterfahren von Anwendungen und Systemen gleichermaßen zu beheben.

Jetzt weißt du es

Wenn Sie diesem Tutorial gefolgt sind, sollten Sie weitere 10 Befehle in Ihrem Terminal-Arsenal haben. Vom Verschieben, Kopieren, Erstellen und Aktualisieren bis hin zu verschiedenen Möglichkeiten zum Lesen von Dateiinhalten sollten Sie sich beim Bewegen im Dateisystem und beim Bearbeiten der Dateien und Verzeichnisse, auf die Sie stoßen, wohl fühlen. Wenn dieses Zeug kompliziert erscheint, üben Sie einfach weiter, und Sie werden in kürzester Zeit ein selbstbewussterer Benutzer sein. Für weitere Tipps, Tricks und Tools besuchen Sie uns erneut und aktivieren Sie Sysadmin.

[ Jetzt herunterladen:Eine Anleitung für Systemadministratoren zum Bash-Skripting. ] 


Linux
  1. 5 Gründe, Linux im Jahr 2020 zu verwenden

  2. 8 Linux-Befehle für effektives Prozessmanagement

  3. 20 grundlegende Linux-Befehle für Anfänger mit Beispielen erklärt

  4. 10 Linux-Befehle für die Netzwerkdiagnose

  5. Linux für Anfänger:10 Befehle für den Einstieg am Terminal

Linux lsof Command Tutorial für Anfänger (15 Beispiele)

8 grundlegende Linux-Dateiverwaltungsbefehle für neue Benutzer

Grundlegende Linux-Befehle für Anfänger

Die 40 nützlichen Linux-Server-Befehle für Anfänger und Profis

40 nützliche Git-Befehle für Linux-Administratoren und -Entwickler

17 beste Linux-Netzwerk- und Fehlerbehebungsbefehle für Anfänger