Frage 101-105

Angenommen, im aktuellen Verzeichnis steht eine Datei namens -i. Was passiert, wenn Sie das Kommando rm * geben?

  1. Das Kommando rm fragt vor jeder Löschoperation nach, ob die betreffende Datei tatsächlich gelöscht werden soll

  2. Alle Dateien im Verzeichnis (inklusive der Datei -i) werden gelöscht.

  3. Alle Dateien im Verzeichnis außer der Datei -i werden gelöscht (Dateien, deren Name aussieht wie eine Kommandooption, können nicht gelöscht werden)

  4. Nichts Besonderes passiert

LPI-Lernziel Grundlegende Dateiverwaltung (103.3)

Dateinamen-Suchmuster wie * werden von der Shell expandiert, bevor das Kommando rm tatsächlich aufgerufen wird. rm sieht also keinen Unterschied zwischen einem -i, das Sie explizit als Kommandooption angegeben haben und einem -i, das aus der Expansion von * resultiert, weil es eine Datei dieses Namens gibt. Entsprechend verhält sich rm gemäß der Bedeutung von -i -- es fragt vor jeder Löschaktion zurück.

4 Kommentare · Kommentar hinzufügen · RSS

Löschen der Datei -i mit rm *

Sebastian Gonczarek (Gast) · 31. Oktober 2010, 14:26

Hallo,

ich habe in einem Test Verzeichnis mehrere Dateien angelegt auch die besagte Datei "-i". Als ich dann den Inhalt des Verzeichnisses mit rm * löschen wollte wurde alle Dateien über den Löschvorgang abgefragt ausser die Datei -i.So wie es aussieht kann man die Datei -i tatsächlich nicht löschen. Ich benutze Debian in der Version 5.0.6 mit dem 2.6.26-2-amd64 Kernel.

Löschen der Datei -i mit rm *

Anselm Lingnau (eingetragen) · 1. November 2010, 09:55

Man kann solche Dateien durchaus löschen, man muss nur wissen, wie :^)

Das ist allerdings Thema einer anderen Frage …

Löschen der Datei -i mit rm *

T. Scholz (Gast) · 27. Februar 2011, 17:41

Antwort: "2. Das Kommando rm fragt für jede Datei nach, ob sie tatsächlich gelöscht werden soll"

Die Zweite Antwort ist so auch nicht richtig. Es wird eben nicht für "jede" Datei im Verzeichnis gefragt ob sie gelöscht werden soll, denn "-i" ist ebenfalls eine Datei und wird ausgespart.

Korrekt wäre: Antwort: "2. Das Kommando rm fragt für jede Datei ausschließlich der Datei -i nach, ob sie tatsächlich gelöscht werden soll"

Die "-i" Datei kann übrigens mit rm -- -i wieder gelöscht werden ..

Löschen der Datei -i mit rm *

Anselm Lingnau (eingetragen) · 27. Februar 2011, 18:04

Das ist ein berechtigter Einwand. Ich habe den Antworttext geändert, um diese Mehrdeutigkeit zu vermeiden. Vielen Dank!

Wichtig

LPI-Logo

Die LPI Academy ist keine offizielle Webseite des LPI!

Sponsor

Linup-Front-Logo

Die LPI Academy wird für die Community unterstützt von der Linup Front GmbH

A Django Site

Diese Seite

Version: 0 (Anselm)
22.8.2009 01:07:25

Benutzer

Nicht angemeldet

Kommentare

RSS