Давайте предположим, что есть такая команда:
cat /boot/config-3.19.0-32-generic | grep CONFIG_ARCH_DEFCONFIG
Вывод как таковой:
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
Теперь мой вопрос: Есть ли какая - либо команда , которые будут печатать только то , что находится внутри кавычек, то есть " "
?
И не могли бы вы немного объяснить команду? Спасибо! заранее, авансом.
cat
, хотя и бесполезный в этом случае, в будущем упростит редактирование всей строки команд на случай, если вы захотите что-то изменить / добавить / удалить позже, возможно, tr
или cut
, и т. Д., Не нужно будет искать и перемещать имя файла убедитесь, что другая команда его поддерживает, найдите, куда ее поместить и т. д. А для небольшого тестового файла он добавляет только 0,002 с. (Я, вероятно, потратил больше времени, набирая это, чемcat
cat
тут помощь? Вы можете сделать grep foo file | tr
или ... | cut
так же легко, как cat file | tr | grep ...
. cat
Просто добавляет дополнительные пять символов, дополнительные трубы и дополнительный вызов программы и не упрощает ничего.
cat
в трубе почти всегда является пустой тратой ресурсов (AKA UUOC );grep
может уже читать свои входные данные из файла (то есть,grep CONFIG_ARCH_DEFCONFIG /boot/config-3.19.0-32-generic
делает то же самое, но 1. Это короче 2. Это проще для понимания 3. Это не разветвление дополнительной оболочки и дополнительного процесса). В 99% случаев использование cat в начале канала без объединения нескольких файлов просто вредно. :)