In meinem Verzeichnis ~ / docs möchte ich alle Dateien "berühren", die mit .txt enden
Wie kann ich das machen?
In meinem Verzeichnis ~ / docs möchte ich alle Dateien "berühren", die mit .txt enden
Wie kann ich das machen?
Antworten:
Mit find:
find ~/docs -name "*.txt" -exec touch {} \;
~/docsnameOption stimmt mit allen txtDateien überein - execführt den Befehl touchfür den Dateinamen aus, der in ersetzt wird{}\;beendet den Befehl und touchwird für jede gefundene Datei einmal aufgerufenHinweis:
\+am Ende einen einzigen Befehl, der touchfür alle diese Dateien gleichzeitig ausgeführt wird. Dies ist nicht mit allen Befehlen möglich, funktioniert jedoch touchund spart Ihnen einige Anrufe, wenn Sie viele betroffene Dateien haben.
{} \+wäre hier besser ...touchkann viele Dateinamen in seiner Kommandozeile verarbeiten, so werden beispielsweise mit 10.000 Dateien und{} \;10.000 Aufrufen antouch... Using{} \+wirdtouchnur einmal aufgerufen (abhängig vom verfügbaren Speicher) ... hier ist ein Auszug aus der Manpage von find :-exec command {} + ... The command line is built in much the same way that xargs builds its command lines. Weitere Einzelheiten finden Sie in derman findDokumentation.