Скрипты на REXX
Здесь представлены программы, написанные на языке REXX, который входит в стандартную поставку всех выпускаемых фирмой IBM операционных систем, и, кроме того, перенесён на многие диалекты *nix (FreeBSD, Linux, Solaris, etc.) и даже на MS Windows. Эти программы можно рассматривать не только как полезные утилиты, но и как примеры программирования на REXX.
Если у вас есть скрипт, который может оказаться полезным кому-то ещё, и вы хотите сделать этот скрипт общественным достоянием, присылайте его для опубликования Игорю Васькову.
-
09.09.13 Открылся новый сайт про Rexx.
- 25.04.11 rxcalcnet.zip -- Victor Smirnoff
- Калькулятор подсетей на REXX.
- 22.04.10 rxFtpTree.zip -- Victor Smirnoff
-
Скрипт позволяет строить дерево каталогов Ftp-сервера и создает файл с деревом следующего вида:
/ TRADEMARKS.TXT ftp -> software/lotus pub -> software/lotus robots.txt /4700 /aix /annualreport /as400 /bin .................
Возможный вариант запуска выглядит следующим образом:X:\rxFtpTree>rxFtpTree.cmd ftp.boulder.ibm.com rxFtpTree v0.04 (C)opyLeft VicTor Smirnoff, 2010 xxxxxx@rambler.ru Start: 22 April 2010 22:32:07 REXX FTP API Version is 2.1 Remote Host is ftp.boulder.ibm.com Remote Host User is anonymous Remote Host Password is anonymous@guest.ftp Start Directory is / Output File is .\ftp.boulder.ibm.com.dir Ping to Remote Host is 210 ms Connect to Remote Host (wait please) Remote Host OS is UNIX Type: L8 FTP Mode is Passive Real Start Directory is / If you want to break the execution, then press Ctrl-C at any time. / Finish: 22 April 2010 22:32:12 (started at 22 April 2010 22:32:07)
- 27.04.03 isomount.zip -- Dmitry Ban
-
Скрипт позволяет удобно монтировать/размонтировать ISO images с помощью
NDFS с плагином
ndpiso.
Чтобы монтировать/размонтировать исошки нажатием на Enter в FC/2, добавьте в секцию
[Associations] файла fc.ini такую строчку:
*.{iso,trk,nrg}: isomount.cmd !f
Полный синтаксис:Syntax: isomount [-vbcwh] image_file Keys: v - verbose b - beep on errors c - change directory to mounted resource w - view mounted resource in WPS h - help image_file: full path to ISO or RSJ image file or its name, if mounting from current directory First launch mounts ISO|RSJ image specified to NDFS tree. Second launch with the same parameters unmounts it.
- 08.02.02 pppserv.zip -- Andrey Vasilkin
- Скрипт занимается обработкой входящих PPP соединений на нескольких портах. Ведётся статистика на каждого пользователя (общее время на линии, последний звонок, входящий/исходящий трафики)
- 15.12.01 foreach2.zip -- Alexey Stratonnikov
-
Доработка скрипта foreach:
Usage: foreach [-?rlvVdDRx] <filespec> <command> -? : this help -r : search subdirectories -l : list found files -v : type command before executing -V : type command without executing -d : include directories -D : directories only -R : use relative paths when possible -x : execute REXX command ('file' variable gives filename) {} in command will be replaced with filename Use @ as empty command
- 19.11.01 pyrxutil.html -- Юрий Погребняк
-
...вместо примера к описанию библиотеки получилась
весьма, по-моему, неплохая вещица:
- пути в виде дерева a-la "Go.exe";
- заголовки окон из списка задач;
- треды для каждого процесса, опять же с ползунками использования системного времени (цвета для IDLE тредов отличаются);
- динамика загрузки ЦПУ.
- 18.09.01 rxnslookup.zip -- VicTor Smirnoff
- Очень удобная замена nslookup, особенно для массового просмотра и создания списков.
- 13.03.01 killdup.zip -- hungryewok@mail.ru
- Скрипт для поиска и убирания дубликатов в фидобазах *.msg
- 12.02.01 makeHref.zip -- Evgeny Kotsuba
-
Вашему вниманию предлагается набор двух скриптов, помогающих
при "разборе полётов" при работе с прокси-сервером. С их помощью
можно пройтись по всем урлам, которые запрашивались вашим прокси-сервером,
причём это не требует длительного ожидания, поскольку запрашиваемые объекты,
как правило, уже нахожятся в кэше.
Оба скрипта на выходе создают html-файл со ссылками, отстортированными в алфавитном порядке, ссылки берутся в случае makeHref_log.cmd из логфайла прокси-сервера, а в случае makeHref.cmd -- из сохраненного в виде HTML-файла ответа кэш-менеджера на запрос "In-Memory and In-Transit Objects". Прокси сервер в моём случае -- squid.
Использование:makeHref.cmd cachemgr.html MyAnaliz.html makeHref_log.cmd access.log MyAnalizLog.html
Для сортировки данных потребуется ещё утилита bigsort, которая берётся на Хоббесе, но для комплекта положена в архив. Между прочим, рекомендация -- выкинуть нафиг стандартный sort и использовать вместо него bigsort.Единственная неприятность, с которой можно столкнуться -- это размер html-файла, который может оказаться неподъёмным для вашего браузера. В этом случае вы можете легко модифицировать скрипты для получения набора html-файлов.
- 22.07.00 math.zip -- saa@dgap.mipt.ru
- Набор скриптов, реализующих функции SIN, COS, EXP, POW, SQRT, PI, и скрипт для вывода числа с бОльшим, чем по умолчанию, количеством знаков после запятой.
- 01.06.00 cddb.zip -- Sergey Gryaznov
-
Скрипт для получения информации об аудио-CD из CDDB.
Вставьте компакт-диск и запустите cddb.cmd.
Дополнительные ключи:
- -SEL:x
Помогает в том случае, если в базе найдено несколько записей для вашего компакт-диска. Пример:Connecting to: 216.200.155.32:8880 Connected: OK 201 cddb8.cddb.com CDDBP server v1.4.1b18PL0 ready at Wed May 31 14:07:10 2000 200 Hello and welcome Stalker@os2.ru running OS/2_rexxCDDB 1.21. 1) newage 9f0ffd0c Enigma 4 / Metamorphosis 2) newage a0101e0c Enigma 4 / Metamorphosis (Fake Russian 'Bootleg' album) CDDB0007: Incomplete record(s) found. Please use '-SEL:x' option
Запуститеcddb -SEL:1 для того, чтобы получить информацию об "Enigma 4 / Metamorphosis", иcddb -SEL:2 для "Enigma 4 / Metamorphosis (Fake Russian 'Bootleg' album)", соответственно. - -ren:name
Скрипт будет автоматически переименовывать файлы MP3, если они имеют имена вида name.X.mp3, где X=[A..Z] -- порядок трека.
- -SEL:x
- 23.01.00 обновлён 01.06.00 calendar2.zip -- Sergey Gryaznov
- Скрипт, рисующий календарь на заданный месяц. Помечает праздничные дни, в том числе прогнозирует переносы нерабочих дней в том случае, если праздник пришёлся на выходные. Также может помечать дни рождения знакомых, если записать нужные даты в специальный файл.
- 27.04.00 cplay.zip -- ewok
- Текстовый шелл для проигрывания MP3, умеет делать пpокpутку, показывать тэги в двух кодиpовках, вpемя пpошедшего/оставшегося вpемени, хаpактеpистики файла, pегулиpует гpомкость, показывает имя пpоигpываемого файла, показывает текущую позицию ползунком и делает пpокpутку.
- 24.04.00 foreach.zip -- Andrey Zakharchenko
-
foreach.cmd - выполнить команду для всех файлов, соответствующих
указанному шаблону.
foreach [-rlv] <шаблон> <команда>
- 21.04.00 checkpoint.html -- Степан Трубачёв
- ...Таким образом, Константину хватило таких стандартных средств OS/2, как Rexx и iptrace для того, чтобы победить и CheckPoint, и собственного администратора файрволла :) Обратите внимание на то, что приведенный скрипт представляет собой полноценный сервер, обслуживающий TCP соединения, так что при желании можно и httpd и ftpd на rexx написать :)
- 29.01.00 site.zip -- horizon
- Этот простой скрипт перебирает по порядку все адреса хостов сети класса С (mask=255.255.255.0) из заданного диапазона и вызывает для них команду host. Результат выводится в файл. Сделана для собственных нужд. Если кому поможет сохранить время, буду счастлив.
- 29.01.00 chkimap.zip -- sergey_k@prtb.com.ru
- Ещё один mail checker на REXX, но для IMAP4 сервера. Скрипт отобpажает в виде иконки на десктопе состояние почтового ящика (IMAP4). Двойной щелчок мыши по иконке запускает почтовую программу. Основан на скрипте аналогичного назначения для pop3 (chkmail.zip / 22.04.99 by Andrew Alexeyenko), откуда, собственно, и взята большая часть скрипта. Переделана процедура проверки почты, изменён звуковой сигнал и ещё кое-что по мелочи.
- 01.12.99 pm123pls.zip -- Dmitry I. Platonoff
-
Почему-то выяснилось, что под пополамой нечем играть shoutcast'овские потоки
(это броадкаст в mp3). Точнее, играть есть чем, а вот плейлисты, которые на
сайтах тут и там лежат, никто не понимает. Можно, конечно, его скачивать,
руками из него выковыривать URL и скармливать тому же mp123 или pm123. Но это
неинтересно.
В общем, пришлось написать скриптик. Зато теперь можно в Нетскейпе мышой тыкать -- и играет. Hе знаю, конечно, насколько это интересно -- развлечение-то буржуйское, без толстого канала смысла не имеет. Но всё же...
Этот файлик нужно ассоциировать с типом .pls в WPS, а также прописать как обработчик маймового типа "audio/x-scpls". И телемаркет. :)
Да, вызов pm123 в скрипте можно также заменить на mp123 -- он тоже работает. А если всё-таки хочется пользоваться этой PM'ной игралкой, то в ней надо включить autoplay, а то происходит интересная штука -- он коннектится, но не играет, приходится ещё кнопочку Play в нём давить :)
- 19.10.99 rc.zip -- Sergey Gryaznov
- Скрипт в несколько строчек, позволяющий прочесть кириллицу, по ошибке набранную латинскими буквами (не в том регистре клавиатуры). Yfghbvth? djn nfr/
- 10.10.99 md5chk.zip -- Vadim Yegorov, Joseph Shrago
- Данный набор утилит предназначен для создания списка файлов каталога с генерацией md5 summ каждого файла. Основная цель: использование при подготовке CD для последующей проверки (copy /dev/nul бывает мало ;). Причём проверки не под OS/2 (или не столько под OS/2 :): все исполняемые файлы сделаны как dual boot execs. Делалось исключительно для и "под" себя.
- 12.09.99 sm2.zip -- Timur Kazimirov
-
Я довольно долгое время пользуюсь вот этими своими
скриптиками (плагиат, конечно, но автора уже и не вспомню,
да и модернизировал я рексовый чуток). Может, общественности и пригодится.
Идея такая: используя сокеты, отправить мессагу по SMTP вместо вызова sendmail'а. Скрипты, имеющие расширение NRX, суть то же самое, но на NetRexx'е.
- 12.09.99 ipload11.zip -- Oleg Kostiuchenko
- Модифицированный ipload (версия 1.1) с возможностью сбора статистики как по входящему, так и по исходящему траффику по всем интерфейсам - lan0-9, lo и ppp0-1.
- 03.09.99 ipload.zip -- Joseph Shrago
-
Скрипт IPLOAD.CMD предназначен для накопления статистики
об исходящем трафике. Те, кому нужен и/или входящий
легко допишут или перепишут нужные места.
Скрипт предназначен для однократного ежесуточного
запуска каким-нибудь планировщиком типа CRON.
Скрипт формирует два файла статистики: нарастающий итог и суточную
нагрузку.
Спасибо Chill за идею. - 20.08.99 Tips -- Vitalie Vrabie
-
Скрипт берет стрОки из stdin и плюет их в stdout с интервалом в одну секунду.
Зачем? Для irc. Иногда бывает нужным сделать /exec -o <что-то-там> (-o
- с выводом в окно: канал/приват/dcc), а команда возьми да и выплюнь с полэкрана информации за раз. - 14.08.99 Tips -- Alexander Anisimoff
- Небольшой скрипт, играет все доступные mp3 файлы.
- 10.08.99 Набор скриптов -- Anton Dushko
-
- calendar.zip
- пpостенький текстмодовый календаpик с подсветкой пpаздников
- hfb.zip
- генеpатоp HTML файллиста по files.bbs
- mixer930.zip
- командлайновый миксеp для OPTi930 (легко пеpеделывается под любую дpугою звуковую карту), с некотоpым подобием документации
- mpx2all.zip
- пpописывает инфоpмацию из заголовка/id3 тэга mp3'шника в files.bbs и/или EA, с некотоpым подобием документации
- rexxmp.zip
- текстмодный медиаплееp, с некотоpым подобием документации
- iniarc.zip
- аpхиватоpоподобный .ini менеджеp
- 23.07.99 kzmrexx.zip -- V.Kazimirchik
-
Небольшая коллекция REXX-скриптов, написанных в разное время для
собственного использования. Возможно, будут кому-то полезны. Что там:
- \astra
- Борьба с !message.* у "Астры" (кто пользуется - тот поймёт) и разбор Log'а на предмет выявления принятых файлов. Нужно далеко не всем, но всё-таки...
- \auto
- Sheduler. Примитивен до ужаса, но работает месяцами.
- \fileutil
- Мелкие утилиты для массовой обработки файлов.
- \viewer
- File viewer. Писался в свое время в качестве обучения REXX'у. Требует ANSI ON, подробности - внутри eye.cmd.
- \astra
- 20.07.99 calc.zip -- Evgeny Kotsuba
-
"Русский народный калькулятор" был написан в своё время
по причине неудобства предлагаемых Тимуром скриптов для
расчётов с промежуточными результатами. Calc.cmd позволяет
использовать произвольное количество переменных, а кроме того,
позволяет производить инкрементальные вычисления, например:
Русский наpодный калькулятоp v0.01
Введите выpажение или Q для завершения
3.12
X= 3.12
+5
X= 8.12
/(2+3)
X= 1.624
Y=123
Z=Y+12
X+Y-Z
X= -10.376
- 17.07.99 Tips -- Вадим А. Сухоруков
- Замечательный скрипт был впервые мной обнаружен в README к OS/2 2.1, затем был замечен в документации к версии 3. Изначально замещал System Proportional ISO на non-ISO шрифт.
- 12.07.99 Tips -- Timur Hi-Rullin
- ...Два скрипта, простых, как мычание. Их даже нету смысла пристегивать в виде файла, настолько они коротки, и, в тоже время, лично я не представляю себе без них жизни в OS/2...
- 07.07.99 cureriff.zip -- Andrew Cherepivsky
- Скрипт излечивает кривой RIFF-заголовок в некоторых аудиомпегах (при попытке проиграть такие файлы выдаётся сообщение "слишком высокая частота дискретизации").
- 08.06.99 fixDC001a.zip -- Alex Porollo
- В пакет исправлений к DC User Pack включен очень быстрый скрипт от Alex Porollo, написанный на базе этого пакета и предназначенный для выдёргивания приаттаченных файлов из писем. Обрабатывает целиком почтовый ящик, который может содержать любое количество писем. Письма могут содержать приаттаченные файлы как в формате UUencode, так и в формате Base64. Кроме того, скрипт умеет корректно декодировать файлы из фрагментированных аттачей в произвольной последовательности.
- 09.05.99 del0d.zip -- Олег Булыгин
- Netscape по непонятным мне причинам имеет практику вставления дополнительного символа 0Dx в последовательность 0Dx,0Ax (перевод строки). Данный скрипт удаляет один символ 0Dx из последовательности 0Dx,0Dx,0Ax в *.Htm и *.Html в текущей директории
- 06.05.99 fingergw.zip -- Vitali Pelenyov
- Пример CGI скрипта. Предполагается, что fingergw.cmd расположен в /cgi-bin, a fg.htm -- где угодно (например, в корневом каталоге). fg.htm создает форму для ввода имени пользователя и адреса хоста, на который надо запустить finger. fingergw.cmd возвращает результаты выполнения команды finger.
- 01.05.99 prtscan_new.zip -- Dmitriy Mihantyev
-
Несколько усовершенствованная версия скриптов portscan1 и portscan2 от
Andrew Alexeyenko. Отличатеся тем, что:
- принимает не только адрес, но и имя хоста;
- пользует оригинальный services из %ETC%;
- при выводе печатает порт, название сервиса, комментарий если есть в services, или попросту unknown port.
- 29.04.99 ipkill.zip -- Felix Herbeck
- Набор из двух скриптов: ipscan.cmd сканирует адреса в указанной подсети и и выдает на stdout и в файл (если он задан) адреса отозвавшихся хостов, а ipspeed.cmd проходится по этим хостам программкой jolt. Может применяться для "ускорения Интернета".
- 27.04.99 ksock.zip -- Timur Kazimirov
- Набор из двух скриптов: killsock.cmd закрывает или отдельный сокет, или все, находящиеся в состоянии CLOSE_WAIT (это для тех, у кого emx нефиксенный), а killuser.cmd закрывает все сокеты для определённого IP-адреса - можно отпугивать таким образом "ненужных" людей.
- 23.04.99 mp3.zip -- Sergey Gryaznov
- Набор из двух скриптов: make_mp3.cmd для автоматического создания мпегов с CD, и mp3.cmd для их воспроизведения в том порядке, в котором треки лежали на CD.
- 23.04.99 dyn_bkg.zip -- Sergey Gryaznov
- Через заданные промежутки времени меняет фоновую картинку на десктопе.
- 22.04.99 portscan.zip -- Andrew Alexeyenko
- Пpоизводит сканиpоване доступных tcp-поpтов на указанной машине. возможны 2 ваpианта: portscan1.cmd производит сканиpование заданного диапазона портов, portscan2.cmd -- сканиpование по описанию из файла (типа etc\services).
- 22.04.99 chkmail.zip -- Andrew Alexeyenko
- Скрипт отобpажает в виде иконки на десктопе состояние почтового ящика (pop3). Двойной щелчок мыши по иконке запускает почтовую программу.
- 19.04.99 cr.zip -- Vladimir Komarov
-
Check reference. Проверка ссылок в HTML-файле в тагах
и . В интернет не выходит и внешние ссылки не проверяет, но для проверки собственных сайтов годится. - 19.04.99 tf.zip -- Vladimir Komarov
- Text formatter. Форматирование текста a la Лексикон с разбивкой на абзацы, выравниванием по левому краю или по ширине, заменой коротких тире на длинные, уничтожением переносов... Распознает абзацы по красной строке, по пропуску строчки или считает отдельным абзацем каждую строку. Вот это действительно может быть неплохим примером программирования на REXX :)
- 19.04.99 open.zip -- Vladimir Komarov
- StarDock'овский скрипт, позволяющий открыть объект из командной строки. Полезен, например, для прописывания в ассоциациях File Commander'у, чтобы ассоциации, назначенные в WPS, работали и из командной строки тоже.
- 19.04.99 rfingerd.zip -- Vitali Pelenyov
-
Архив содержит файлы fingerd.cmd -- демон на REXX, и
f.cmd -- дополнительный файл, stdout которого отправляется клиенту.
Это очень простой демон. Он слушает порт 79 и отвечает на любое соединение, посылая какой-либо текст. Текст генерируется командным файлом, который получает строку запроса клиента как параметр.
Хотя сам по себе демон не представляет практической ценности, его можно использовать как заготовку для более сложной программы. - 17.04.99 charsetw327f.zip -- Sergey Afonin
-
Скрипт для почтовой программы PMMail/2,
который позволяет нормально читать письма в кодировках, отличных от общепринятой koi8-r, а также
письма с неправильно указанной кодировкой (этим грешат MS Outlook и Messenger из Netscape Communicator 4.0x.
В написании скрипта участвовали Dmitry Irtegov, Sergey Afonin, Vladimir Komarov, Vitali Pelenyov и Victor Pashkevich. Новые версии скрипта выкладываются на ftp.kraft-s.ru под именем charsetwXXXX.rar, где XXXX -- номер версии. - 17.04.99 rtf2os.zip -- Joseph Shrago
-
Некоторые файлы в формате RTF почему-то не читаются в LSS 1.1.
После обработки этим скриптом они начинают читаться.
Загадкой для меня является не этот факт, а тот, что некоторые файлы
в формате RTF читаются и так, без обработки.
Короче, если ваш LSS не читает RTF-файл -- попробуйте этот скрипт,
может быть, он поможет.
Скрипт затрагивает только представление и кодировку символов.
Описание шрифтов он не трогает (сделайте это сами), поэтому документ все
равно будет выглядеть безобразно; сделайте select entire document и
установите шрифт Courer или Helvetica -- полегчает.
Работает он, правда, медленно, но что вы хотите -- RTF есть внутренний формат одной очень хорошо известной фирмы на букву М :) - 17.04.99 ruuen.zip -- Max Alekseyev
-
UUEPoster и UUEncoder.
UUEPoster заточен на FMail, но легко поддается настройке на любой другой тоссер. - 17.04.99 rdir.zip -- Sergey Gryaznov
- Этот скрипт просматривает дерево каталога, указанного ему в качестве параметра, и выдаёт информацию об общем количестве файлов и подкаталогов, а также о суммарном объёме файлов в виде "xxxx files, in yyy directories, occupying zzzzz bytes".
- 17.04.99 whois.zip -- Dmitry Maximovich
- В комплекте поставки утилит tcp/ip для OS/2 почему-то отсутствует утилита whois. whois позволяет просматривать базу данных доменов, зарегестрированных в Network Information Center (NIC). Описание протокола можно прочитать в RFC 812.
- 17.04.99 wwwget.zip -- Dmitry Maximovich
-
Простейшая утилита, послылающая запрос "GET" на адрес httpd и выдающая ответ сервера на stdout.
Позволяет увидеть служебную информацию в ответе сервера, которую обычные браузеры не показывают.
Например, узнать версию и модель www-сервера:
D:\wwwget ru2.halfos.ru | fgrep Server:
Server: Apache/1.3.4 (OS/2) PHP/3.0.6 ApacheJServ/1.0b2 rus/PL27.4 - 17.04.99 dbf2csv.zip -- Dmitry Maximovich
-
Весьма полезная, на мой взгляд, утилитка, позволяющая преобразовать файл формата dbf в обычный
текстовый файл формата csv (comma separated values). Наверное, в каждой фирме есть унаследованные
приложения, написанные на Clipper или FoxPro, и эта утилита позволит Вам легко переносить
информацию из этих программ в ваш сервер Oracle ;).
Данная утилита использует shareware-библиотеку rexxbase.dll компании American Coders, LTD.
Интересные ссылки:
Комментариев к странице: 0 | Добавить комментарий
Домой | Проект ядро Core/2 | Проект OS/4 Download | Новости | Гостевая книга | Подробно обо всем | Нужные программы | Проекты | OS/2 FAQ | Всячина | За и Против | Металлолом | #OS2Russian | RDM/2 | Весёлые картинки | Наша галерея | Доска объявлений | Карта сайта | ПОИСК | ФОРУМ