LINUX.ORG.RU

Сообщения Masha

 

Bash вставка переменной-строки в файл

Добрый день! Не подскажете как вставить переменную-строку перед конкретной строкой в файлe?

PARAM=«text» sed '/template/i\$PARAM' file

Хотелось бы, чтобы перед словом «template» в file вставлялось не $PARAM, а значение этой переменной, то есть text.

Masha
()

Bash Проверить существует ли символьная ссылка с данным именем

Добрый день!Не подскажете, как проверить существует ли в каталоге символическая ссылка с данным именем? Для обычных файлов мы делаем это с помощью [ -f $file_name ]. А в этом случае?

Masha
()

Bash получение значения переменой (тип строка) в имени которой содержится переменна/

Добрый день! Столкнулась с такой проблемой: есть несколько переменных, которые содержат IP-адреса: address_0=192.168.0.50 address_1=192.168.0.51 address_2=192.168.0.52 ........... Мне необходимо в цикле получать значения этих переменных,то есть что-то типа такого $((address_$index)), но операция (()) подходила бы только, если бы мои переменные-адреса являлись бы числами, а не строкой, в которой, кроме цифр содержится еще "." Заранее спасибо за помощь!

Masha
()

Считывание данных из std в массив unsigned char*

Добрый день! Мне необходимо сформировать следующий пакет длиной 42 байта, представленный масиивом unsigned char: длина логина [1], логин[20], длина пароля[1], пароль[20] (в скобках указан размер в байтах). Логин и пароль пользователь вводит из std. Может быть, можно как-то заполнять структуру, а потом посредствм reinterpret_cast представить ее в виде массива из unsigned char. Затрудняюсь с реализацией. Не могли Вы привести код.

Masha
()

TCP Клиент-Сервер(linux, C++)

Добрый день!Мне необходимо написать TCP клиент-сервер (linux, C++). Клиент: авторизуется на сервере и передает файл, производит реконнект при потере связи с сервером. Сервер:при корректной авторизации клиента сохраняет переданный клиентом файл на жестком диске. Не подскажете сразу по нескольким вопросам: 1. Для передачи данных необходимо установить сначала TCP-соединение.То есть, если я сначала напишу,например,TCP-клиент, запущу tcpdump , указав порт,который слушает сервер, в дампе я не увижу данных,передаваемых клиентом(напрример, логин и пароль)? 2. Каким образом можно осуществлять кодировку логина и пароля на клиенте? Например, не отображать набор пароля (**********) и передача по сети параметров авторизации в закодированном виде? 3. Каким образом сервер сможет понять,что закончился логин,начался пароль,закончился пароль и передается файл? 4. Как лучше обработать ситуацию, когда клиент передал часть файла и произошло разъединение?

Masha
()

RTP-analyzer (c++, linux)

Добрый день! Мне необходимо написать rtp-analyzer, подобный http://mmlab.disi.unitn.it/wiki/index.php/Analyzer. К сожалению, исходный код analyzer найти не удалось,а без него не могу понять, как сервер,принимающий udp-датаграммы (по сути это udp-сокет),понимает,что одна udp-датаграмма закончилась и началась другая, как он идентифицирует датаграммы, содержащие RTP. Мне представлялось, что udp-сокет работает с данными, то есть обработка udp-заголовка выполняется системно и скрыта от программиста. Может, кто-то сталкивался с подобной задачей?Интересует, главным образом, реализация. Спасибо!

Masha
()

Напечатать определенным цветом значение переменной, bash

Добрый день! Не подскажете, как напечатать определенном цвeтом значение переменной? Обычный текст (не содержащий переменных) можно напечатать,например, зеленым цветом вот так:

echo -e '\E[32mHello, world!'; tput sgr0
А как быть, если хочется напечатать зеленым цветом текст, содержащий переменную, что-то такое: echo -e '\E[32mHello, $var!'; tput sgr0

Masha
()

Удалить папку, если она существует

Добрый день!Не подскажете, как удлить папку,если она существует? Для файлов в таких случаях используется [ -f «$file»] rm -f $file. Если что-то аналогичное [-f] для проверки существования папок?

Masha
()

Реализация «man page» в собственном скрипте на bash

Добрый день! Не подскажете какой-нибудь изящный способ реализации собственной man-страницы для скрипта, который поддерживает различные ключи? Хотелось бы,чтобы после выполнения ./script --help отображался вывод, подобный man ls.

Masha
()

Bash eдаление строк, не оставляя пробелы

Добрый день! Не подскажете,как в bash удалить строу, не оставляя пробелов.

К примеру у меня есть файл(или строка) , в котором line1
line2
line3
line4
line5
line6
line7
line8
line9
line10

строка1
строка2
строка3
строка4
строка5

Я хочу удалить все line с номером больше 2 .Удаляя с помощью «s/line[^0-2] =//g», я получаю можество пустых строк между блоком «line» и блоком «строка», что не очень красиво.

Masha
()

Bash - проверить была ли определена переменная.

Добрый день! Не подскажете, как средствами bash проверить, была ли определена переменная, то есть было ли ей присвоено какое-то значение?

Masha
()

Архив в бинарном виде в теле скрипта

Добрый день! Не подскажете, как реализовать скрипт на bash, в теле которого находится архив в бинарном виде? На практике это выглядит как строки скрипта, а затем,прям в этом же скрипте, бинарное предсавление архива.

Masha
()

Ожидание пользовательского ввода до момента ввода определенного символа

Добрый день! Не подскажете, как можно реализовать в скрипте на bash следующее :

while [Пользователь не ввел [определенный символ, например Enter] ]
sleep
без использования read. Заранее большое спасибо!

Masha
()

Работа с pipe-ами

Добрый день! Не подскажете, как правильно работать с pipe-ми. Хотелось бы, чтобы значение, вводимое пользователем, перенаправлялось в pipe, затем читалось в переменную и выводилось на экран. Пробовала по-разному, обычно скрипт или зависает на приглашении для ввода значения (то есть можно вводить что угодно,но ничего не происходит) или вообще выдает ошибку.

#!/bin/bash rm -f /usr/local/out.pipe pipe=/usr/local/out.pipe mkfifo «$pipe» echo -n «Input value\\n» read «$pipe»<&0 read a < $pipe echo $a Скрипт выдает:

./script.sh Input value

1 ./script.sh: line 6: read: `/usr/local/out.pipe': not a valid identifier Заранее большое спасибо!

Masha
()

Создание rpm, поддерживающего ввод пользователя при установке пакета

Не подскажете, как создать rpm, поддерживающий ввод пользователя? Стандартный подход echo «Введите значение параметра» read parameter , как выяснилось, не подходит.

Masha
()

Поддержка %config % noreplace в spec-файле Fedora 10

Добрый день! Не подскажете spec-файл, секция %file в Fedora 10 поддерживает %config %noreplace? Пытаюсь сделать так, чтобы конфигурационный файл при установке не перезаписывал старый, а создавался как новый с расширением .rpmnew (Ожидаемое действие директивы %noreplace). Выполняю rpmbuild -bb my.spec и наблюдаю RPM build errors: File must begin with «/»: %noreplace Мой spec-файл:

Summary: First rpm on Fedora 10 Name: program Version: 2.4.8 Release: 5 License: GPL Group: User Interface/Desktops Buildroot: %{_tmppath}

%description My first rpm on Fedora 10

%files /usr/local/SormDecoder/file2 %config %noreplace /usr/local/program/cfg/file.cfg %config(noreplace)/usr/local/program/cfg/file1.cfg

Кстати, %{_tmppath} тоже не проходит, инсталляционные файлы все равно необходимо помещать в папку /root/rpmbuild/BUILDROOT/program-2.4.8-5юч86_64

Заранее большое спасибо!

 rpm fedora10

Masha
()

Reboot и последующий сбой в системе

Друзья! Добрый день! Помогите,пожалуйста!Не представляю,что делать. Выполнила reboot сервера, после чего он не перезапустился. Пишет: ошибка при проверке файловой системы [СБОЙ] введите пароль root: или (Control+D)

Есть еще запись про выброс в оболочку...

Masha
()

SIGSEGV

Друзья! Добрый день! Слышала, что ОС система Linux может послать сигнал SIGSEGV при нехватке памяти, но не могу найти источников, подтверждающих это (кроме замечаний на различных форумах). Утечка памяти является ошибкой сегментации? Не могли бы вы порекомендовать материал или кинуть ссылку. Большое спасибо!:)

Masha
()

Сигнал SIGABRT

Добрый день! Друзья!Подскажите,пожалуйста, в каких случаях ОС linux может посылать сигнал SIGABRT. Источником сигналов может быть как сама операционная система, так и другие пользовательские программы(т.е пользователь). Когда пользователь является источником сигнала SIGABRT мне удалось найти:выполнение команды kill -6 [pid] или использование системного вызова abort(). А вот может ли сама ОС генерировать данный сигнал и если может,то в каких случаях, я не выяснила. Может, вы литературу какую-нибудь посоветуете, а то я уже много перечитала,а нужной информации не нашла. Заранее большее спасибо!

Masha
()

Child process exited normally with status = 0

Добрый день! Друзья! Не подскажете, при каких условиях ОС Linux может принять решение о корректном завершении процесса (в моем случае дочернего) без отправления сигнала. В принципе-то проблема вот в чем. В логах программного модуля вижу следующую запись: MainStub.cxx(255) Child process exited normally with status = 0 Пытаюсь выяснить, чем может быть вызвано такое поведение программного модуля. Пробовала отпрвлять программному модулю (процессу) всевозможные сигналы (killall -[численное значение сигнала] [имя процесса]), но не добилась появления в логах описанной выше записи. В связи с чем, пришла к выводу, что причиной завершения дочернего процесса является не посылка сигнала.

Masha
()

RSS подписка на новые темы