- Сделать выборку, niXman, 13:40 , 10-Дек-09 (1)
- Сделать выборку, rahc, 13:41 , 10-Дек-09 (2)
>>sid > >это кто такой? это oracle_sid написал для примера он может быть как буквенный так и цифровой
- Сделать выборку, niXman, 13:50 , 10-Дек-09 (4)
>это oracle_sid мне это ни о чем не говорит :) щас парсинг и унификацию числовых строк напишу.
- Сделать выборку, niXman, 16:26 , 10-Дек-09 (12)
>>sid > >это кто такой? #include <string> #include <vector> #include <set> #include <algorithm> #include <iterator> #include <fstream> #include <iostream> #include <cerrno> #include <cstring> std::vector<std::string> parse(const std::vector<std::string>& slist) { std::set<std::string> unique_strings; std::vector<std::string>::const_iterator it = slist.begin(); for ( ; it != slist.end(); ++it ) { std::string::size_type pos = it->rfind('_'); if ( pos == std::string::npos ) continue; unique_strings.insert(it->substr(pos+1)); } return std::vector<std::string>(unique_strings.begin(), unique_strings.end()); } int main(int argc, char** argv) { if ( argc != 2 ) { std::cerr << "expected file name!" << std::endl; return 0; } std::ifstream file(argv[1]); if ( !file ) { std::cerr << "can`t open file: " << strerror(errno) << std::endl; return errno; } std::vector<std::string> in; while ( !file.eof() ) { std::string tmp; std::getline(file, tmp); in.push_back(tmp); } std::vector<std::string> out = parse(in); std::copy(out.begin(), out.end(), (std::ostream_iterator<std::string>(std::cout, "\n"))); return 0; }
ищет первый подчерк с конца строки. унифицирует числа.
- Сделать выборку, rahc, 16:40 , 10-Дек-09 (13)
>ищет первый подчерк с конца строки. унифицирует числа. это спасибо я и сам мог написать но на СИ мне не нужно((( только шел чтоб человек т.е. начальник мог понимать что там написанно на СИ он не рубец(
- Сделать выборку, niXman, 16:57 , 10-Дек-09 (15)
> >>ищет первый подчерк с конца строки. унифицирует числа. > >это спасибо я и сам мог написать но на СИ мне не >нужно((( >только шел чтоб человек т.е. начальник мог понимать что там написанно >на СИ он не рубец( это с++ ;)
- Сделать выборку, rahc, 16:42 , 10-Дек-09 (14)
тем более ваш код не будет откомпелированн без напильника по крайне мере в solaris)
- Сделать выборку, niXman, 16:59 , 10-Дек-09 (16)
>тем более ваш код не будет откомпелированн без напильника по крайне мере >в solaris) вам знакомо слово "стандарт" ? так вот у с++ есть стандарт обязывающий всех производителей с++ компиляторов соблюдать его. а солярис его хорошо соблюдает ;)
- Сделать выборку, rahc, 17:20 , 10-Дек-09 (17)
>>тем более ваш код не будет откомпелированн без напильника по крайне мере >>в solaris) > >вам знакомо слово "стандарт" ? так вот у с++ есть стандарт обязывающий >всех производителей с++ компиляторов соблюдать его. а солярис его хорошо соблюдает >;) с этим я с вами полностью согласен --enable-languages=c++ я не добавлял! мне нужно было на shell или bash я это добился вроде)))
- Сделать выборку, niXman, 17:47 , 10-Дек-09 (18)
>[оверквотинг удален] >>>в solaris) >> >>вам знакомо слово "стандарт" ? так вот у с++ есть стандарт обязывающий >>всех производителей с++ компиляторов соблюдать его. а солярис его хорошо соблюдает >>;) > >с этим я с вами полностью согласен >--enable-languages=c++ я не добавлял! >мне нужно было на shell или bash >я это добился вроде))) Все равно спасибо :)
- Сделать выборку, rahc, 18:00 , 10-Дек-09 (19)
>[оверквотинг удален] >>>вам знакомо слово "стандарт" ? так вот у с++ есть стандарт обязывающий >>>всех производителей с++ компиляторов соблюдать его. а солярис его хорошо соблюдает >>>;) >> >>с этим я с вами полностью согласен >>--enable-languages=c++ я не добавлял! >>мне нужно было на shell или bash >>я это добился вроде))) > >Все равно спасибо :) тебе спасибо за старания) удачного вечера
- Сделать выборку, Slavaz, 13:50 , 10-Дек-09 (3)
... | sed -r 's/.*\s*ora_.*_(\d*)/\1/' | sort | uniq
- Сделать выборку, rahc, 13:52 , 10-Дек-09 (5)
>... | sed -r 's/.*\s*ora_.*_(\d*)/\1/' | sort | uniq в solaris нет параметра -r ( я так пробовал
- Сделать выборку, Slavaz, 13:58 , 10-Дек-09 (6)
>>... | sed -r 's/.*\s*ora_.*_(\d*)/\1/' | sort | uniq > >в solaris нет параметра -r ( я так пробовал В Солярке есть маны? :) ... | sed 's/.*_\(\d*\)/\1/' | sort | uniq
- Сделать выборку, rahc, 14:01 , 10-Дек-09 (7)
>>>... | sed -r 's/.*\s*ora_.*_(\d*)/\1/' | sort | uniq >> >>в solaris нет параметра -r ( я так пробовал > >В Солярке есть маны? :) > >... | sed 's/.*_\(\d*\)/\1/' | sort | uniq да но увы( $ cat e.sh cat /tmp/stat|sed 's/.*\s*ora_.*_(\d*)/\1/'| sort | uniq $ ./e.sh sed: command garbled: s/.*\s*ora_.*_(\d*)/\1/ --
- Сделать выборку, rahc, 14:09 , 10-Дек-09 (8)
>[оверквотинг удален] >> >>... | sed 's/.*_\(\d*\)/\1/' | sort | uniq > >да но увы( >$ cat e.sh >cat /tmp/stat|sed 's/.*\s*ora_.*_(\d*)/\1/'| sort | uniq >$ ./e.sh >sed: command garbled: s/.*\s*ora_.*_(\d*)/\1/ > >-- да тут разобрался спасибо работает НО есть всегда в выборке могут присутствовать записи вида 123_new данный пример выведет только new(
- Сделать выборку, rahc, 14:24 , 10-Дек-09 (9)
и возможно ли каждый параметр в выборке присваивать в переменную например $s для дальнейшей манипуляции ими
- Сделать выборку, rahc, 14:45 , 10-Дек-09 (10)
>и возможно ли каждый параметр в выборке присваивать в переменную например $s > >для дальнейшей манипуляции ими /usr/ucb/ps -ax|grep ora_|sed 's/.*_\(\d*\)/\1/'|sort -u пока что так
- Сделать выборку, rahc, 16:08 , 10-Дек-09 (11)
вобщем вот выкладываю на всеобщее обозрение что у меня получилось идея была просто нужна была возможность просмотреть на сервере Работающие на данный момент ORACLE_SID на сервере могут появляться новые базы и также исчезать(для тестов) и чтоб быть в курсе всех событий было задуманно сделать следующее: комманда stat и status$ cat stat #!/bin/bash #i=`echo SID ............ Status ` #echo $i /usr/ucb/ps -ax|grep ora_ |sed 's/.*_\(\D*\)/\status \1/'|sort -u >/tmp/stats chmod +x /tmp/stats cat /tmp/stats /tmp/stats >/tmp/Rep rm /tmp/stats i=`echo SID ............ Status ` echo $i cat /tmp/Rep|grep OPEN cat /tmp/Rep|grep MOUNTED rm /tmp/Rep $ cat status #!/bin/bash # #IBSO if [ $# -eq 0 ]; then echo "Status ORACLE_SID Graber"; date else sqlplus /nolog <<EOF conn sys/sys@$1 as sysdba; select host_name, instance_name, status from gv\$instance; exit; EOF fi Вот такие пироги если есть чем дополнить подсказывайте. Понимаю что сделанно на коленке но главное цель достигнута!
- Сделать выборку, аноним, 21:15 , 10-Дек-09 (20)
>как мне сделать выборку с выводом списка вида: >sid >123 >321 >213 В данном случае | sed 's|.*_||' | sort -u
|