Website-Suche

Wie man JA zu ALLEN mit dem Befehl cp sagt


Der Befehl cp wird verwendet, um Dateien und Verzeichnisse auf einem Linux-System zu kopieren. Wenn ein Benutzer versucht, eine Datei an einen Speicherort zu kopieren, der bereits denselben Dateinamen enthält, besteht das Standardverhalten von cp darin, die Zieldatei mit der Quelldatei zu überschreiben. Auf einigen Linux-Systemen kann dieses Verhalten jedoch anders konfiguriert werden, und der Benutzer wird möglicherweise aufgefordert, das Überschreiben in seinem Terminal zu bestätigen. Beim Kopieren vieler Dateien kann sich diese Aufforderung wiederholen und nervig werden. In diesem Tutorial erfahren Sie, wie Sie mit dem Befehl cp JA zu ALL sagen, wenn Sie versuchen, Dateien über die Linux-Befehlszeile zu kopieren.

In diesem Tutorial lernen Sie:

  • Wie man JA zu ALLEN mit dem Befehl cp sagt

cp-Befehl – Sagen Sie JA zu ALLEN

Wenn Sie hier gelandet sind, versuchen Sie höchstwahrscheinlich, viele Dateien zu kopieren, und möchten nicht ständig aufgefordert werden, das Überschreiben von Dateien mit doppelten Namen jedes Mal zu bestätigen. In den folgenden Beispielen gehen wir auf einige verschiedene Szenarien ein, in denen Sie möglicherweise mit sich wiederholenden Eingabeaufforderungen konfrontiert werden, und auf die Lösungen für jedes dieser Probleme.

  1. Obwohl das Standardverhalten von cp darin besteht, ohne Aufforderung zu überschreiben, haben einige Systeme möglicherweise einen Alias eingerichtet, so dass der Befehl cp automatisch die Option -i (interaktiv) anhängt, die einen Benutzer immer auffordert, wenn Dateinamen kollidieren. Wir können JA zu ALLEN Eingabeaufforderungen sagen, die angezeigt werden, indem wir die Ausgabe des Befehls yes an unseren cp-Befehl weiterleiten. Zum Beispiel:

    
    yes | cp -i file1 file2 file3 test/
    cp: overwrite 'test/file1'? 
    cp: overwrite 'test/file2'? 
    cp: overwrite 'test/file3'?
    

    Der Befehl yes wurde für Situationen wie diese entwickelt und sagt automatisch y (wie yes) zu allen Eingabeaufforderungen, die der Befehl cp erzeugt.

    WUSSTEN SIE SCHON?
    Wenn Ihr cp-Befehl Sie zur Bestätigung des Überschreibens auffordert, auch wenn Sie das Flag -i nicht explizit verwenden, muss Ihr System einen Alias für cp -i konfiguriert haben (dies ist bei RHEL-basierten Distributionen üblich, wenn das root-Konto verwendet wird). Schauen Sie sich unser Tutorial zum Entfernen eines Alias unter Linux an, um Hilfe beim Entfernen dieses Alias zu erhalten.

  2. Eine andere Möglichkeit, Ihren cp -i-Alias zu umgehen, besteht darin, den vollständigen Pfad zu Ihrer ausführbaren cp-Datei zu verwenden.

    
    /bin/cp file1 file2 file3 test/
    
  3. Nur für den Fall, dass Sie mit einer Vielzahl von Dateien arbeiten und sicherstellen möchten, dass Sie nicht versehentlich Zieldateien überschreiben, die den gleichen Namen wie Ihre Quelldateien haben, können Sie die Option -n (kein Clobber) mit cp verwenden:

    
    cp -n file1 file2 file3 test/
    

    Beachten Sie, dass die Option -n -i überschreibt, so dass diese Option auch die sich wiederholenden Eingabeaufforderungen des cp-Befehls entfernt, aber das Äquivalent zur Antwort mit NEIN auf alle Eingabeaufforderungen ist.

Abschließende Gedanken

In diesem Tutorial haben wir gesehen, wie man JA zu ALL sagt, wenn man den Befehl cp auf einem Linux-System verwendet. Dies ermöglicht es uns, die lästigen und sich wiederholenden Eingabeaufforderungen zu umgehen, die erscheinen, wenn wir versuchen, viele Dateien in ein Zielverzeichnis zu kopieren, das Dateien mit dem gleichen Namen wie unsere Quelldateien enthält, oder wenn wir vergessen, den Schalter -i in unserem cp-Befehl auszuschalten.

Verwandte Artikel: