Nehmen wir an, es gibt einen Befehl wie:
cat /boot/config-3.19.0-32-generic | grep CONFIG_ARCH_DEFCONFIG
Die Ausgabe ist als solche:
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
Meine Frage lautet nun: Gibt es Befehle, die nur das drucken, was sich in den Anführungszeichen befindet, dh " "
?
Und könnten Sie bitte den Befehl ein wenig erklären? Vielen Dank! im Voraus.
cat
, obwohl in diesem Fall nutzlos, würde das Bearbeiten der gesamten Befehlszeile in Zukunft erleichtern, falls Sie später etwas ändern / hinzufügen / entfernen möchten, vielleicht ein tr
oder cut
usw., müssen Sie den Dateinamen nicht finden und verschieben Stellen Sie sicher, dass der andere Befehl ihn unterstützt, finden Sie heraus, wo er abgelegt werden soll usw. Für eine kleine Testdatei werden nur 0,002 Sekunden hinzugefügt. (Ich habe wahrscheinlich mehr Zeit damit verbracht, dies zucat
cat
hier? Sie können grep foo file | tr
oder ... | cut
genauso einfach wie cat file | tr | grep ...
. Das cat
fügt nur zusätzliche fünf Zeichen, eine zusätzliche Pipe und einen zusätzlichen Programmaufruf hinzu und vereinfacht nichts.
cat
in einem Rohr fast immer eine Verschwendung von Ressourcen darstellt (AKA UUOC ).grep
kann seine Eingabe bereits aus einer Datei lesen (dhgrep CONFIG_ARCH_DEFCONFIG /boot/config-3.19.0-32-generic
genau das Gleiche tun, aber 1. Es ist kürzer 2. Es ist leichter zu verstehen 3. Es gibt keine zusätzliche Shell und keinen zusätzlichen Prozess). In 99% der Fälle ist die Verwendung von cat am Anfang der Pipe ohne Verkettung mehrerer Dateien nur schädlich. :)