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

Info zu Cp –preserve=links?

Ich versuche zu verstehen, was cp --preserve=links ist tut, wenn es alleine verwendet wird, aus meinen Tests scheint es, dass es eine normale Datei normal kopiert und symbolische Links dereferenziert, aber es scheint, als hätte es genau den gleichen Effekt wie cp -L, wenn es auf eine einzelne Datei verwendet wird.

Stimmt das oder übersehe ich etwas?

Akzeptierte Antwort:

Die --preserve=links Option bezieht sich nicht auf symbolische Links, sondern auf harte Links. Es fragt nach cp um bestehende Hardlinks zwischen zwei oder mehr zu kopierenden Dateien beizubehalten.

$ date > file1
$ ln file1 file2
$ ls -1i file1 file2
6034008 file1
6034008 file2

Sie können sehen, dass die beiden Originaldateien fest verknüpft sind und ihre Inode-Nummer 6034008 ist.

$ mkdir dir1
$ cp file1 file2 dir1
$ ls -1i dir1
total 8
6035093 file1
6038175 file2

Sie können das jetzt ohne --preserve=links sehen Ihre Kopien haben zwei unterschiedliche Inode-Nummern:Es gibt keine feste Verbindung mehr zwischen den beiden.

$ mkdir dir2
$ cp --preserve=links file1 file2 dir2
$ ls -1i dir2
total 8
6089617 file1
6089617 file2

Das sieht man jetzt mit --preserve=links , die beiden Kopien sind immer noch fest verknüpft, aber ihre Inode-Nummer ist 6089617, was nicht die gleiche ist wie die Inode-Nummer der Originaldateien (im Gegensatz zu dem, was cp --link hätte getan).


Linux
  1. Zwei Dateien in zwei Spalten drucken?

  2. Festplatten-Info hinter Hardware-Raid-Controller?

  3. Gemeinsame Linien zwischen zwei Dateien?

  4. Eine Alternative zu Sed, die Unicode unterstützt?

  5. Was ist Awk ‘{print $1+0.45 “ ” $2 “ ” $3 }’ File1> File2?

Installieren Sie die Programmiersprache Rust unter Linux

So zeigen Sie Linux-CPU-Informationen mit CPUFetch an

5 Möglichkeiten, CPU-Informationen in Linux zu überprüfen

Bootloader finden

Wie man pgrep dazu bringt, die vollständigen Prozessinformationen anzuzeigen

Wie listet man Apache-fähige Module auf?