Czy istnieje sposób przypisania wartości do zmiennej, którą otrzymujemy w terminalu, pisząc jakieś polecenie?
Przykładowe polecenie: sensors
Z tego otrzymujemy temperaturę procesora. Jak mogę przypisać tę wartość do temp_cpuzmiennej?
Czy istnieje sposób przypisania wartości do zmiennej, którą otrzymujemy w terminalu, pisząc jakieś polecenie?
Przykładowe polecenie: sensors
Z tego otrzymujemy temperaturę procesora. Jak mogę przypisać tę wartość do temp_cpuzmiennej?
Odpowiedzi:
Tak, używasz my_var=$(some_command). Na przykład:
$ foo=$(date)
$ echo $foo
Mon Jul 22 18:10:24 CLT 2013
Lub na konkretny przykład, używając sedi grepaby uzyskać określone dane, które chcesz:
$ cpu_temp=$(sensors acpitz-virtual-0 | grep '^temp1:' | sed 's/^temp1: *//;s/ .*//')
$ echo $cpu_temp
+39.0°C
temp_cpu=$(sensors)(jednak zmieni to znaki nowej linii w spacje). Możesz także użyćgrepdo filtrowania potrzebnych informacji.