19 мая 2011 г.

Не так страшна консоль, как её малюют

В консоли Linux есть очень много полезных вещей, облегчающих работу с ней. Не обязатально всякий раз вызывать какую-то программу с кучей параметров при тестировании, или при многократном использовании с параметрами, немного отличающимися от предыдущего запуска.

Для тестирования с различными параметрами можно написать небольшой скрипт-цикл с вызовом программы и выдачей чезультатов:

#!/bin/bash
echo "shell script for the testing of erosion/corrosion device"
device=/SPTT1
resistors=($device/Sensor/R1 $device/Sensor/R2 $device/Sensor/R3 $device/Sensor/R4 $device/Sensor/Rref)

calcEro=$device/ErosionRate/ENG
calcCorr=$device/Metalloss/ENG

values=(0.002692 0.00277 0.002751 0.00277 0.005676 0.002692 0.00277 0.002751 0.00277 0.005676 0.002692 0.00277 0.002751 0.00277 0.005676 0.002692 0.00277 0.002751 0.00277 0.005676 0.002692 0.00277 0.002751 0.00277 0.005676)

echo i will reset the userbits in resistors. please wait.
for i in $(seq 0 4)
do
   for j in $(seq 0 10)
   do
        pio setubit ${resistors[i]} $j 0
   done
done

echo

for i in $(seq 0 14)
do
  echo ${resistors[i%5]} set to ${values[$i]}
  pio set ${resistors[i%5]} ${values[$i]}
  pio get $calcEro
  pio get $calcCorr
  sleep 1
  i=`expr $i + 1`
done




Или работа с telnet с использованием определенной последовательности символов, или даже знаков

#!/bin/bash
host=127.0.0.1
port=23
arr=( "superadmin" "yourpassword" "24" "8" "poe drop poe0" "dev dial 1" "99" )

(echo open ${host} ${port}
 sleep 1
 for j in "${arr[@]}"
 do
   echo $j
   sleep 1
 done
echo exit) | telnet


При частом использовании определенной программы, можно использовать историю ввода команд. Только не всегда пользование этой историей очень удобно. Мне вполне удобно листать по хистори, используя кнопки PgUp и PgDn (листание страниц). Если при попытке использовать эти кнопки ничего не получается, то можно активировать их в файле /etc/inputrc:

# alternate mappings for "page up" and "page down" to search the history
"\e[5~": history-search-backward
"\e[6~": history-search-forward

Если же нужно активировать эту фичу только для одного пользователя, то это тоже фозможно:

cp /etc/inputrc /home/$youraccount/.inputrc

и затем настроить содержимое файла .inputrc

Комментариев нет:

Отправить комментарий