Не удается запустить intel power gadget

Попробуйте:

awk -F, '/^#/{f=$NF".txt";cmt=$0; next} {printf "%s\n%s\n",cmt,$0 >f; close(f)}' file

Пример

Применяется к вашему образцу входных данных:

$ awk -F, '/^#/{f=$NF".txt";cmt=$0; next} {printf "%s\n%s\n",cmt,$0 >f; close(f)}' file

После выполнения вышеуказанного в каталоге находятся следующие файлы:

$ ls
file  importantname1.txt  importantname2.txt  importantname3.txt

Содержимое новых файлов:

$ cat importantname1.txt 
#info1 info2 info3 ,importantname1
importanttext1
$ cat importantname2.txt 
#info1 info2 info3 ,importantname2
importanttext2
$ cat importantname3.txt 
#info1 info2 info3 ,importantname3
importanttext3

Как это работает

Awk читает строку входного файла по строке. Наш скрипт классифицирует эти строки как комментарии или нет. Для строк комментариев сохраняется имя файла и комментарий. Если нет комментариев, создается и печатается новый файл

  • `-F,

    Это указывает awk использовать запятую в качестве разделителя полей при вводе. Таким образом, имя файла всегда будет последним полем.

  • / ^ # / {f = $ NF ".txt"; cmt = $ 0; next}

    Если строка начинается с # , мы сохраняем последнее поле, $ NF , плюс .txt как имя файла f . Вся строка комментария сохраняется как cmt . Затем мы говорим awk пропустить остальные команды и перейти к следующей строке , чтобы начать заново.

  • printf "% s \ n% s \ n", cmt, $ 0> f; close (f)

    Для строк без комментариев мы печатаем последний просмотренный комментарий cmt и текущую строку $ 0 в имя последнего просмотренного файла f . Затем мы закрываем дескриптор файла для f .

Защита от неверных имен файлов

Если поля, которые должны использоваться в качестве имен файлов, содержат / , ОС интерпретирует имена файлов как включающие каталоги.Чтобы избежать этого, мы можем заменить все / на - , используя gsub (/ \ //, "-", f) следующим образом:

awk -F, '/^#/{f=$NF".txt";gsub(/\//, "-", f); cmt=$0; next} {printf "%s\n%s\n",cmt,$0 >f; close(f)}' file
2
21.11.2016, 17:00
2 ответа

Да, ваш ЦП поддерживает необходимые функции RAPL.

Гаджет питания не поддерживает ваш ЦП: код инициализации RAPL управляется таблицами, и он ничего не знает о процессорах Skylake (или даже о Broadwell). Он знает только о Sandy Bridge, Ivy Bridge и Haswell (и даже тогда не обо всех процессорах Haswell) ...

4
27.01.2020, 21:59

Гаджет мощности давно не обновлялся для Linux (текущая версия 2.5, но для OSX и Windows текущая версия 3.0.x) - но вы можете использовать turbostat --debug, чтобы увидеть много той же информации, включая измерения RAPL для каждого ядра и т.д. Вот man page, но man page в вашей системе, скорее всего, будет более актуальной.

1
27.01.2020, 21:59

Теги

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