
Obtuve un código anterior que estaba en un documento pdf, dondequiera que intento publicarlo, la sangría es terrible, me gustaría darle el formato adecuado para la depuración. Aquí está mi código:
#!/bin/bash
# to measure average power consumed in 30sec with 1sec sampling interval
duration
=
30
interval
=
1
RAILS
=(
"
VDD_IN /sys/bus/i2c/drivers/ina3221x/0-
0041/iio:device1/in_power0_input"
"VDD_SYS_GPU /sys/bus/i2c/drivers/ina3221x/0-
0040/iio:device0/in_power0_input"
"VDD_SYS_CPU /sys/bus/i2c/drivers/ina3221x/0-
0041/iio:device1/in_power1_input"
"VDD_SYS_SOC /sys/bus/i2c/drivers/ina3221x/0-
0040/iio:device0/in_power1_input"
"VDD_SYS_DDR /sys/bus/i2c/drivers/ina3221x/0-
0041/iio:device1/in_power2_input"
"VDD_4V0_WIFI /sys/bus/i2c/drivers/ina3221x/0-
0040/iio:device0/in_power2_input"
)
for
((
i
=
0
;
i
<
${#RAILS[@]}
;
i++
));
do
Optimizin
g Jetson TX2 for Power and Performance
Jetson TX2
TDG
-08413-
001_v1.0
| 28
read
name
[
$i]
node
[
$i]
pwr_sum
[
$i]
pwr_count
[
$i]
<<<$(echo
"${RAILS[$i]} 0 0")
done
end_time
=$(($(date '+%s')
+
duration
))
while
[
$(date '+%s')
-
le
$end_time
];
do
for
((
i
=
0
;
i
<
${#RAILS[@]}
;
i++
));
do
pwr_sum
[
$i]=$((
${pwr_sum[$i]}
+
$(cat ${node[$i]})))
&&
pwr_count
[
$i]=$((
${pwr_count[$i]}
+
1
))
done
sleep
$interval
done
echo
"RAIL,POWER_AVG"
for
((
i
=
0
;
i
<
${#RAILS[@]}
;
i++
));
do
pwr_avg
=$((
${pwr_sum[$i]}
/
${pwr_count[$i]}
))
echo
"${name[$i]},$pwr_avg"
done
Lo estoy haciendo manualmente pero me pregunto si se podría hacer automáticamente.
Respuesta1
¿Qué IDE estás usando? En VIM, gg=G
funciona razonablemente bien. Si estás usando Atom, entonces mira esto:https://atom.io/packages/format-shell.
Respuesta2
formato-shellusos shfmt
(https://github.com/mvdan/sh) bajo el capó. Esta herramienta podría conectarse a CI o como pre-commit
gancho