上記のコードがありますが、PDF文書であり、どこに投稿しようとしてもインデントがひどく、デバッグのために正しい形式にインポートしたいと思います。これは私のコードです。
#!/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
手動でやったのですが、自動でできるかと思います。
答え1
どのIDEを使用しますか? VIMではgg=G
効果がかなり良いです。 Atomを使用している場合は、以下を参照してください。https://atom.io/packages/format-shell。
答え2
シェルフォーマット使用shfmt
(https://github.com/mvdan/sh)フード。このツールはCIに接続するか、pre-commit
フックとして使用できます。