Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Помогите со скриптом / 14 сообщений из 14, страница 1 из 1
26.11.2006, 13:05:40
    #34155875
Скрипт
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
Такая задача: есть текстовый файл. Необходимо вызывать sh скрипт, передавая ему в качестве параметра каждую строку (строка состоит из одного слова). Если строка начинается с #, то считать ее закоментированной и пропускать.
Т.е. аналог вот этого в командном процессоре Windows:

Файл params.txt
One
Two
Three

Командный файл:
@echo off
FOR /F "eol=# tokens=1 delims= " %%i in (params.txt) do call runmed.cmd %%i
...
Рейтинг: 0 / 0
26.11.2006, 14:46:35
    #34155946
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
Код: plaintext
1.
2.
3.
4.
for i in `cat params.txt | grep -v '^#'`
do
 ./runmed.sh $i
done
...
Рейтинг: 0 / 0
26.11.2006, 15:23:22
    #34155976
lissyara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
Не указан язык
на csh это был бы foreach ....
...
Рейтинг: 0 / 0
26.11.2006, 15:46:51
    #34155997
Скрипт
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
lissyaraНе указан язык
на csh это был бы foreach ....

СкриптНеобходимо вызывать sh скрипт
...
Рейтинг: 0 / 0
26.11.2006, 16:47:03
    #34156063
lissyara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
Проглядел

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
26.11.2006, 19:24:08
    #34156212
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
Сразу вспоминается глава из книги Tim O'Relly "Unix Power Tools": "Программировать на C shell? Нет!"
...
Рейтинг: 0 / 0
26.11.2006, 19:30:48
    #34156216
GoldSquid
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
grep -v '^#'` params.txt | xargs runmed.sh
...
Рейтинг: 0 / 0
26.11.2006, 19:31:21
    #34156217
GoldSquid
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
Поправка

grep -v '^#'` params.txt | xargs -L 1 runmed.sh
...
Рейтинг: 0 / 0
26.11.2006, 20:00:55
    #34156245
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
ага, только буковка l маленькая должна быть

grep -v '^#' params.txt | xargs -l1 echo ./runmed.sh

и к тому же это только в Linux прокатит.
Например, во FreeBSD по-другому

grep -v '^#' params.txt | xargs -n1 -x ./runmed.sh

в общем, расширенные опции xargs к сожалению не кроссплатформенные и лучше их избегать.
...
Рейтинг: 0 / 0
26.11.2006, 20:22:49
    #34156258
DocAl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
Гм. Вообще, xargs FreeBSD понимает -L 1 в том смысле, который тут из контекста виден.
...
Рейтинг: 0 / 0
26.11.2006, 21:43:12
    #34156344
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
Видимо, зависит от версии
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
bash- 2 . 05 $ uname -a
FreeBSD bbb  4 . 4 -RELEASE FreeBSD  4 . 4 -RELEASE # 3 : Sat Sep  23   10 : 39 : 41  MSD  2006      root@bbb:/usr/src/sys/compile/MYKERNEL  i386
bash- 2 . 05 $ grep -v '^#' params.txt | xargs -l1 ./runmed.sh
xargs: illegal option -- l
usage: xargs [-0t] [-J replstr] [-n number [-x]] [-s size]
           [utility [argument ...]]
bash- 2 . 05 $ grep -v '^#' params.txt | xargs -L1 ./runmed.sh
xargs: illegal option -- L
usage: xargs [-0t] [-J replstr] [-n number [-x]] [-s size]
           [utility [argument ...]]
bash- 2 . 05 $ grep -v '^#' params.txt | xargs -n1 -x ./runmed.sh
One
Two
Three
bash- 2 . 05 $ 

не надежно, в общем.
...
Рейтинг: 0 / 0
26.11.2006, 22:28:59
    #34156380
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
кстати, в шестерке -L действительно работает как надо
...
Рейтинг: 0 / 0
27.11.2006, 14:25:11
    #34157767
GoldSquid
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
Надо просто в зависимостях последнюю версию xargs прописать. И нет проблем :)))
...
Рейтинг: 0 / 0
27.11.2006, 14:49:49
    #34157887
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со скриптом
я об этом и говорил - зависимость от версий. А for - он тупой, он везде один и тот же :-)
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Помогите со скриптом / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]