#!/bin/bash
for file in /home/*
do
a=$(grep -aohPR -m 1 '(?<=Center X= )\d+' $file | tr -d '\n')
c=$(grep -aohPR -m 1 '(?<=Center Y= )\d+' $file)
if [ -n "${a}" -a -n "${b}" ]; then
echo "${a}-${b}" >>out.txt
fi
done
find -size +$((1*1024))c -size -$((3*1024))c
#!/bin/bash
for file in /home/*
do
a=$(grep -aohPR -m 1 '(?<=Center X= )\d+' $file | tr -d '\n')
c=$(grep -aohPR -m 1 '(?<=Center Y= )\d+' $file)
if [ -n "${a}" -a -n "${b}" ]; then
echo "${a}-${b}" >>out.txt
fi
done
find -size +$((1*1024))c -size -$((3*1024))c
#!/bin/bash
for file in /home/*
do
a=$(grep -aohPR '(?<!\d)\d{12}(?!\d)' $file | tr -d '\n' >> dstfile.txt)
b=$(grep -aohPR -m 1 '(?<=Center X= )\d+' $file | tr -d '\n' >> dstfile.txt)
c=$(grep -aohPR -m 1 '(?<=Center Y= )\d+' $file | tr -d '\n' >> dstfile.txt)
d=$(grep -aohPR -m 1 '(?<=Possibility= )\D\d+' $file | tr -d '\n' >> dstfile.txt)
e=$(grep -aohPR -m 1 '(?<=Type= )\w+\W\w+' $file | tr -d '\n' >> dstfile.txt)
f=$(grep -aohPR '\b[RL]\b' $file | tail -n 5 >> dstfile.txt)
done
if [ $a -eq 0 ] && [ $b -eq 0 ] && [ $c -eq 0 ] && [ $d -eq 0 ] %% [ $e -eq 0 ] && [ $f -eq 0 ]
then
echo '$a+$b+$c+$d+$e+$f'
else
echo '' > /dev/null
fi
если а не пусто
и если есть б не пусто
то
echo '$a+$b'
эльс не хватило переменных
grep -aohPR '(?<!\d)\d{12}(?!\d)' /path > example.txt
grep -aohPR -m 1 '(?<=Center X= )\d+' /path > example.txt
grep -aohPR -m 1 '(?<=Center Y= )\d+' /path > example.txt
grep -aohPR -m 1 '(?<=Possibility= )\D\d+' /path > example.txt
grep -aohPR -m 1 '(?<=Type= )\w+\W\w+' /path > example.txt
grep -aohPR '\b[RL]\b' /path | tail -n 1 > example.txt
grep -aohPR '\b[RL]\b' /path > example.txt
grep -aohPR '\b[RL]\b' /path | tail -n 1 > example.txt
Вы уверены, что в бинарном формате не надйётся подобных последовательностей случайно?
вы понимаете насколько чудовищно этот бинарный (судя по всему) формат отличается от того, что вы написали в постановке вопроса? Приложите уж лучше файл в бинарном виде или откройте его в 16ричном редакторе и скрньте.
grep -aohPR '(?<!\d)\d{12}(?!\d)' /path > example.txt
вывел 780222402136grep -aohPR -m 1 '(?<=Center X= )\d+' /path > example.txt
вывел 3711grep -aohPR -m 1 '(?<=Center Y= )\d+' /path > example.txt
вывел 1919grep -aohPR -m 1 '(?<=Possibility= )\D\d+' /path > example.txt
вывел %74grep -aohPR -m 1 '(?<=Type= )\w+\W\w+' /path > example.txt
вывел Benign MC
if [ -n "${a}" -a -n "${b}" ];
уже не работает так, как надо.мне нужно условие, которое при парсинге найдет хоть какое-то значение у "a=" и "b=" в файле, в противном случае никаких данных оттуда не парсить.