Supponiamo che esista un comando come:
cat /boot/config-3.19.0-32-generic | grep CONFIG_ARCH_DEFCONFIG
L'output è come tale:
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
Ora, la mia domanda è: ci sono dei comandi che stamperanno solo ciò che è all'interno delle virgolette, cioè " "
?
E potresti per favore spiegare un po 'il comando? Grazie! in anticipo.
cat
, sebbene in questo caso inutile, renderebbe più semplice la modifica dell'intera riga di comandi in futuro nel caso in cui si desideri modificare / aggiungere / rimuovere qualcosa in seguito, forse un tr
o cut
, ecc., Non è necessario trovare e spostare il nome file , assicurati che l'altro comando lo supporti, trova dove inserirlo, ecc. E per un piccolo file di test aggiunge solo 0,002 secondi. (Probabilmente ho speso più tempo a scrivere questocat
cat
aiuto qui? Puoi farlo grep foo file | tr
o ... | cut
con la stessa facilità cat file | tr | grep ...
. Il cat
solo aggiunge un extra di cinque personaggi, un tubo in più e una chiamata di programma in più e non lo fa semplificare nulla.
cat
in una pipe è quasi sempre uno spreco di risorse (AKA UUOC );grep
può già leggere il suo input da un file (cioègrep CONFIG_ARCH_DEFCONFIG /boot/config-3.19.0-32-generic
fa esattamente la stessa cosa, ma 1. È più corto 2. È più facile da capire 3. Non esegue il fork di una shell aggiuntiva e di un processo aggiuntivo). Nel 99% dei casi, usare cat all'inizio della pipe senza concatenare più file è dannoso. :)