Строка GREP из алфавита. Последние файлы в подкатариатах

NetBSD имеет документацию здесь: Часть V. Сборка системы

Вы могли скомпилировать ядро ​​NetBSD на OSX. Как минимум, вам потребуется

  • дерево исходных текстов ядра , то есть / sys (которое, по крайней мере, не конфликтует с системными каталогами OSX).
  • какие бы инструменты ни потребовались, вам, вероятно, придется загрузить исходный код и скомпилировать те . build.sh - это лишь небольшая часть этого.

Но поскольку он использовал файлы заголовков OSX, он может / не может даже компилироваться. Вы можете рассмотреть возможность кросс-компиляции:

1
07.01.2019, 15:19
1 ответ

Именно tail -1дает вам последнюю строку результата вызова grep. Вероятно, это происходит из-за совпадения в последнем файле в последнем каталоге.

Вместо этого вам нужно перебрать каталоги в цикле. Это используетbash:

for dir in folder_*/; do
    files=( "$dir"/file_* )
    grep -F 'Total CPU time used' "${files[-1]}"
done

Это будет перебирать каталоги. Для каждого каталога последний файл (в смысле словарного порядка )проверяется на предмет строки, которую вы ищете.

Я использую -Fс grep, так как я ищу фиксированную строку, а не регулярное выражение.

Если вы хотите дополнительно получить имя файла в выводе grep, то любой тег в /dev/nullв качестве последнего аргумента дляgrep(grepбудет включать имя файла при сопоставлении более чем одного файлового операнда )или используйте grepс -H, если ваш grepподдерживает это.

2
27.01.2020, 23:23

Теги

Похожие вопросы