Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Лабораторная работа №13 / LoGo / My
.sh#!/bin/sh
case $1 in
1) file -s $2* | grep ELF | awk '{ print $1}' | tr -d ":";;
2) #objdump -f $2 | awk '{if ( $1 == "start") addr=$3 }';
#echo $addr;
#objdump -d --start-address={$addr} $2;;
objdump -d --start-address=`objdump -f $2 | awk '{if ( $1 == "start") $3 }'` $2;;
3) readelf -S $2 | grep '^ \[[0-9|| ]' | awk '{ if ( ($1 == "[") && ($2 != "0]")) { print $3;} else { if ($1 != "[") print $2; } }';;
4) readelf --hex-dump=5 $2 | grep $3 ;;
5) readelf --hex-dump=5 $2* 2>/dev/null |grep " 0x*"| tee -a test.txt;;
6) readelf -S $2 | awk '{ if (($8 !~ /W/) && ($7 !~ /W/))
{
if ($1 ~ /]/) {
print $6;
}
else {
print $7;
}
}
}'| grep '[0-9]'> summ.txt;
num=`wc -l summ.txt| awk '{print $1}'`;
num=`expr $num + 1`;
echo $num;
#`test $x -le $num`
#W=`wc pr.txt` - number string
summ=0;
for m in 'grep "" summ.txt'
do
num1=hex2dec m;
summ=`expr $summ + num1`
done
#for (( x=1; `test $x -le $num`; x=`expr x + 1`)); do
# echo "Hello";
# str=`sed -n '$xp' summ.txt`;
# echo $str;
# num1=`hex2dec str`;
# num1=`hex2dec tmp`;
# echo $num1;
# summ = `expr $summ + `hex2dec `sed -n '$xp' summ.txt```;
# echo $summ;
#done;;
echo $summ;;
7) readelf -s temp.o | grep UND;;
8)readelf -S $2 | awk '{ if (($8 ~ /X/) || ($7 ~ /X/))
{
if ($1 ~ /]/) {
print $4;
}
else {
print $5;
}
}
}'|grep $3 > summ.txt;
num=`cat summ.txt`;
echo $num;
if [ $3 = $num ]
then
objdump -d --start-address=$3 $2 | head;
else
echo "Error";
fi;;
9)echo "9";
temp=3;
echo $temp;;
esac