Создание файла на сервере apache

Я пытался создать действительно простую веб-страницу для передачи файлов на моем сервере apache2, и мне это удалось, затем я переместил файл index.php в папку для упорядочивания других моих проектов. Я помню, когда мой сайт работал, я дал ему разрешение на создание и сохранение файлов с помощью:

sudo chown www-data cloud_data / (cloud_data - это место, где файлы сохраняются)

Но после того, как я переехал index.php со всеми зависимыми файлами и папками (например, cloud_data и upload.php) в новую папку, я не могу создавать файлы с помощью сайта, echo Температура процессора >> /home/andy/bin/HD_AND_CPU_TEMPS.txt сенсоры -f | grep "temp1" >> /home/andy/bin/HD_AND_CPU_TEMPS.txt geany /……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………. хотите, чтобы в файле отображалась только вторая температура.

Но есть два temp1?

Как можно отображать только вторую временную температуру?

0
задан 14 August 2020 в 05:52

2 ответа

The following code prints the temp1 line only if it follows a line containing k10temp-pci-00c3:

$ sensors -f | awk '/k10temp-pci-00c3/{f=1} f && /temp1/{print; f=0}'
temp1:        +82.4°F  (high = +158.0°F)

If you also want the heading:

$ cat sensors-f | awk 'BEGIN{print"CPU Temperature"} /k10temp-pci-00c3/{f=1} f && /temp1/{print; f=0}'
CPU Temperature
temp1:        +82.4°F  (high = +158.0°F)

How it works

  • BEGIN{print"CPU Temperature"} prints the heading.

  • /k10temp-pci-00c3/{f=1} sets the awk variable f to 1 (true) when a line containing k10temp-pci-00c3 is found.

  • f && /temp1/{print; f=0} will print a line if f is true and the line contains temp1. This also sets f back to zero (false).

Alternative: using sed

$ sensors -f | sed -n '/k10temp-pci-00c3/,/temp1/{/temp1/p}'
temp1:        +82.4°F  (high = +158.0°F)
0
ответ дан 21 August 2020 в 07:59

вы можете передать имя чипа в качестве аргумента sensors k10temp-pci-00c3, чтобы программное обеспечение sensors считывало только этот конкретный датчик.

$ sensors k10temp-pci-00c3
Adapter: PCI adapter
temp1:        +82.4°F  (high = +158.0°F)
              (crit = +169.5°F, hyst = +168.3°F)

Это приведет к более быстрому считыванию по сравнению со считыванием всех доступных датчиков с последующим ограничением вывода.

И тогда вы захотите получить только строку temp1, проще всего использовать grep

$ sensors k10temp-pci-00c3 | grep temp1
temp1:        +82.4°F  (high = +158.0°F)

Чтобы получить только температуру: используйте awk для обработки этой строки как столбца и получения второго столбца

$ sensors k10temp-pci-00c3 | grep temp1 | awk '{print $2}'
+82.4°F

Я верю этому методу работает быстрее и потребляет меньше вычислительной мощности.

Для других людей с другими машинами выходные данные датчика могут быть другими, соответственно измените, что искать. На моей машине метка датчика Tdie вместо temp1

1
ответ дан 16 January 2021 в 01:45

Другие вопросы по тегам:

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