powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / ISQL: вещает "Unable to open", хотя скрипт стопудово есть
60 сообщений из 60, показаны все 3 страниц
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140813
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hi all

Имеется тумблер "Изврат" в положении "ВКЛ" и SQL-скрипт с именем tmp_run1t.sql в каталоге

Код: plaintext
C:\TEMP\.(rio)() (baz)()\sql\

Скрипт этот - точно есть:

Код: plaintext
1.
2.
3.
4.
5.
SQL> shell dir "C:\TEMP\.(rio)() (baz)()\sql\"tmp_run1t.sql | findstr tmp_run1t.sql;
30.12.2015  18:28               105 tmp_run1t.sql

SQL> shell type "C:\TEMP\.(rio)() (baz)()\sql\"tmp_run1t.sql;
in "C:\TEMP\.(rio)() (baz)()\sql\tmp_trace.sql";
in "C:\TEMP\.(rio)() (baz)()"\sql\tmp_random_run.sql;

А выполнение его - точно облом:
Код: plaintext
1.
2.
3.
4.
5.
SQL> in "C:\TEMP\.(rio)() (baz)()\sql\"tmp_run1t.sql;
Unable to open C:\TEMP\.(rio)() (baz)()\sql\

SQL> in "C:\TEMP\.(rio)() (baz)()\sql\tmp_run1t.sql";
Unable to open C:\TEMP\.(rio)() (baz)()

Чего это ISQL так стесняется открыть мой файлик ? :-)
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140814
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидЧего это ISQL так стесняется открыть мой файлик ? :-)
Его-то он открыл, а вот "C:\TEMP\.(rio)() (baz)()"\sql\tmp_random_run.sql; - не смог, ибо
у команды IN всего один параметр, и он в данном случае - литерал в кавычках.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140817
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SysInternals ProcessMonitor ?
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140833
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
блин... вилы как бэ... :-)

зы. ненавижу винду. за все её тупые изобретения типа файлов с пробелами, для которых так и не сделали нормальный cmd.exe
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140854
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какое отношение имеет isql к cmd ???

ну можешь запустить PowerShell или 4nt/TakeCMD ради интереса
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140878
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ariochкакое отношение имеет isql к cmd ???Да батник один есть, и он сильно меня достал. И там не только к isql, но и к fbsvcmgr есть обращения. Долго рассказывать, да и мало кому интересно.
Arioch ну можешь запустить PowerShell или 4nt/TakeCMD ради интереса PowerShell, видимо, придется изучать. Ибо cmd совсем изабэл своей тупостью.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140892
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидИбо cmd совсем изабэл своей тупостью.
А ты не пытайся его через плечо гнуть. Не для этого он...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140910
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид, никак не могу догнать проблему... Что и откуда тебе надо запускать?
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
@rem --= test_sql.cmd =--
@echo off
echo CONNECT "mydb" user sysdba password masterke;>test.sql
echo SELECT CURRENT_TIMESTAMP FROM RDB$DATABASE;>>test.sql
echo COMMIT WORK;>>test.sql
echo EXIT;>>test.sql

isql -i test.sql
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140912
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидИбо cmd совсем изабэл своей тупостью.
Ты просто не умеешь его готовить. :) Скажи что, как, откуда и куда надо засандалить через cmd, а я попробую тебе помочь.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140913
Фотография zirra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBConstructor> isql -i test.sql
Абалдеть!.. Человек, который не влетает, куда и для чего commit впихивать, ещё и советы даёт!!!

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140919
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zirra,

ага Таблоиду
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140920
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zirra, никуда и ничего он не впихивает.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140921
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис, не нужна советы по cmd shell? Ok...
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140924
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBConstructor,

ох, если бы ты видел что он вытворяет в cmd...
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140929
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вытворял он в основном в SQL, cmd это так, цветочки.
Хотя ХЗ может чего и изменилось, с него станется. :)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140930
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис, полагаешь, я за свои 15 лет админства мало навытворял в cmd?
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140935
Фотография zirra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBConstructor> zirra, никуда и ничего он не впихивает.
А!.. Таки ты ж ещё и по-русски плохо читать умеешь... Пичалька... :-(

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140937
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zirra, что именно тебя не устраивает в том, что я комитчу транзакцию, в которой получаю текущие дату и время, а не откатываю её по умолчанию на EXIT?
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140942
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zirra, [офтоп] с коллегами из "абика" часто видишься? Костю, Саню, Диму? ;)
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140945
Фотография zirra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBConstructor> zirra, что именно тебя не устраивает в том, что я комитчу транзакцию, в которой получаю текущие дату и время, а не откатываю её по умолчанию на EXIT?
Потому что не в том инструменте, в котором надо, а в том, в котором "как жаль"...

DBConstructor> zirra, [офтоп] с коллегами из "абика" часто видишься? Костю, Саню, Диму? ;)

С Костиком мой братан с месяц назад пересекался...
А с Шуриком и Димкой я только регулярно в ВК переписываюсь...
....
И, таки если ты меня узнал, так хоть обзовись тоже, а то "я, Кеша, не узнаю Вас в гриме!.."... ;-)

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140947
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zirraПотому что не в том инструменте, в котором надо, а в том, в котором "как жаль"...

Ты про тему в IBExpert?

DBConstructorС Костиком мой братан с месяц назад пересекался...
А с Шуриком и Димкой я только регулярно в ВК переписываюсь...
....
И, таки если ты меня узнал, так хоть обзовись тоже, а то "я, Кеша, не узнаю Вас в гриме!.."... ;-)
Питерский мир айти крайне тесен. Ты меня не знаешь, но парни в "БИТе" часто тебя вспоминали. Увидел знакомую имя с фамилией и прояснил окончательно через "круги". Отпишу в мыло, если не против.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140949
Фотография zirra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBConstructor> Ты про тему в IBExpert?

Угум-с...

DBConstructor> Питерский мир айти крайне тесен. Ты меня не знаешь, но парни в "БИТе" часто тебя вспоминали. Увидел знакомую имя с фамилией и прояснил окончательно через "круги". Отпишу в мыло, если не против.
Пиши-пиши... Завтра, авось, успею прочитать, между беготнёй... :-(

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140951
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zirraУгум-с...
Проблема в том, что я пересел на IBExpert с EMS SQL Manager. Хоть автор, вроде как, один и тот же, да и функционал схож, но некоторые вещи реализованы иначе. К примеру, в редакторе скриптов EMS'а можно выполнить только весь скрипт целиком и для выполнения выделенных фрагментов приходится использовать SQL Editor, который понимает и COMMIT, и SET TERM. То есть на EMS'е я пользовал исключительно SQL Editor, а с IBExpert еще не до конца освоился.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140952
Фотография zirra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBConstructor> Проблема в том, что я пересел на IBExpert с EMS SQL Manager. Хоть автор, вроде как, один и тот же,
Ни разу не так...
Вообще не представляю, как можно EMS пользоваться хоть 10 минут!.. 8-О

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39140954
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zirra, да можно... ) Два года на нем просидел.
Для просмотра информации по объектам БД в дереве и для создания объектов через скрипт (вручную) вполне годится. Я бы и не слез с EMS, но, к сожалению, он начал сильно тупить при достижении размера наработанного скрипта в несколько сотен килобайт и отключение всяких "вспомогалок" (подсветок, линков и т.д.) не сильно спасает.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141045
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBConstructorТаблоидИбо cmd совсем изабэл своей тупостью.Ты просто не умеешь его готовить. :) Скажи что, как, откуда и куда надо засандалить через cmd, а я попробую тебе помочь.Спасибо за предложение, но я уже остыл к нему, этому cmd :) Слишком много времени потратил на то, чтобы эта хрень ПРАВИЛЬНО работала с именами файлов/каталогов, прочитанных из файла (типа .conf), когда они содержат пробелы и прочее абразиво типа "(x86)". Оказалось в итоге, что внутри условных веток ("if ... ( ... )") могут быть траблы на ровном месте именно с командами типа таких:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
...
    if .%sid%.==.1. if .%trc_unit_perf%.==.1. (
        for /f "tokens=1-3" %%a in ('findstr /i /c:"Session ID:" !trace_lst!') do (
            set run_repo=%fbsvcrun% action_trace_stop trc_id %%c
            echo !run_repo! >>%sts%
            cmd /c "!run_repo!" 1>>%sts% 2>&1
        )
    )
...

И если всё очень аккуратно доделать этот батник до безошибочной работы с каталогами типа "c:\program files (x86)\firebird database server 3.0......\foo ,,)))),,, bar () ()())(rio(((" - то он перестанет после этого работать с человеьими именами типа простого "c:\fb30". И перестанет НЕ из-за кавычек, которые в этом случае не будут добавлены, а потому, видите ли, что теперь надо запускать не вот так: cmd /c "!run_repo!" ... - а вот так: "!run_repo!". То ли скобка закрывающая там влияет, то ли еще что.
Короче, нахрен. Тест на имитацию oltp-нагрузки для ФБ 2.5 / 3.0 я сделал еще год взад ( svn://svn.code.sf.net/p/firebird/code/qa/oltp-emul/ ), кому надо сильно - создадут папки с обычными именами без пробелов и прочего дерьма.

PS. Всех с наступающим. А топег всё-таки загадили, "новогодние вы мои"
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141062
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидСлишком много времени потратил на то, чтобы эта хрень ПРАВИЛЬНО работала с
именами файлов/каталогов, прочитанных из файла (типа .conf), когда они содержат пробелы и
прочее абразиво типа "(x86)".
ССЗБ. Нет чтобы сделал просто: добавил расширение .cmd и внутри использовал немудрёный set
вместо "параметрообразного" синтаксиса...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141071
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovССЗБ. Нет чтобы сделал просто: добавил расширение .cmd и внутри использовал немудрёный set вместо "параметрообразного" синтаксиса...лучше минимизировать число всяких .bat/.cmd и прочих "исполнителей".
Чем быстрее домохозяйка находит в папке слово 'setup.exe', тем лучше :-)
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141164
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидСпасибо за предложение, но я уже остыл к нему, этому cmd :) Слишком много времени потратил на то, чтобы эта хрень ПРАВИЛЬНО работала с именами файлов/каталогов, прочитанных из файла (типа .conf), когда они содержат пробелы и прочее абразиво типа "(x86)". Оказалось в итоге, что внутри условных веток ("if ... ( ... )") могут быть траблы на ровном месте именно с командами типа таких:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
...
    if .%sid%.==.1. if .%trc_unit_perf%.==.1. (
        for /f "tokens=1-3" %%a in ('findstr /i /c:"Session ID:" !trace_lst!') do (
            set run_repo=%fbsvcrun% action_trace_stop trc_id %%c
            echo !run_repo! >>%sts%
            cmd /c "!run_repo!" 1>>%sts% 2>&1
        )
    )
...

Да, может. Команда set должна обязательно заканчиваться переводом строки. И, кстати, переменные окружения обрамляются '%', а не '!'. Стандартным для себя способом сделал бы немного длиннее, но, имхо, чуточку лаконичнее и без вызова внешних утилит типа "findstr":
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
@echo off
setlocal
set trace_lst=%~1
for /f "usebackq tokens=1* delims=:" %%i in ("%trace_lst%") do (
  set tag=
  call :check %%i, %%j
)
endlocal
goto :eof

:check
set trc_id=%~1
shift
if "%~1"=="" goto :next
set tag=%tag%_%trc_id%
goto :check

:next
if "%tag%" neq "_Session_ID" goto :eof
"%fbsvcrun%" action_trace_stop trc_id %trc_id%




ТаблоидИ если всё очень аккуратно доделать этот батник до безошибочной работы с каталогами типа "c:\program files (x86)\firebird database server 3.0......\foo ,,)))),,, bar () ()())(rio(((" - то он перестанет после этого работать с человеьими именами типа простого "c:\fb30". И перестанет НЕ из-за кавычек, которые в этом случае не будут добавлены, а потому, видите ли, что теперь надо запускать не вот так: cmd /c "!run_repo!" ... - а вот так: "!run_repo!".
Не могу понять, зачем ты дергаешь копию cmd, вместо того, чтобы просто выполнить команду "%fbsvcrun%" с параметрами.

ТаблоидPS. Всех с наступающим. А топег всё-таки загадили, "новогодние вы мои"
Да не топег и был... ;) С наступающим НГ!
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141177
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лишняя запятая: call :check %%i, %%j
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141343
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBConstructorпеременные окружения обрамляются '%', а не '!'.Тссс! Никому не рассказывай про enabledelayedexpansion! А то вдруг раскусят, почему в следующем примере три последних значения времени одинаковые...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Batch:
@echo off

echo t1=%time%
ping -n 3 127.0.0.1 >nul
echo t2=%time%
ping -n 3 127.0.0.1 >nul
echo t3=%time%
ping -n 3 127.0.0.1 >nul
if .1.==.1. (
    echo t4=%time%
    ping -n 3 127.0.0.1 >nul
    echo t5=%time%
    ping -n 3 127.0.0.1 >nul
    echo t6=%time%
)

Output:
t1= 1:02:02,55
t2= 1:02:04,57
t3= 1:02:06,58
t4= 1:02:08,60
t5= 1:02:08,60
t6= 1:02:08,60
DBConstructorНе могу понять, зачем ты дергаешь копию cmd, вместо того, чтобы просто выполнить команду "%fbsvcrun%" с параметрами.Да потому что при наличии некоторых символов в имени каталога, не пойму при каких именно но сильно подозреваю закрывающую круглую скобку, батник отказывается выполнять %fbsvcrun%, и пишет аналог 'bad command or file name'.
Ладно, леший с ним, этим cmd.exe. Убогая среда, как и вся ось, её содержащая. Попробуй, к примеру, объявить в батнике переменную и прочитать в неё из файла вот этот текст: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" " http://www.w3.org/TR/html4/strict.dtd">. Или попробуй заставить его выводить время всегда в формате HH:mm:ss, даже когда значение числа часов во времени менее 10. Или дату в формате ansi.
Или попробуй определить время модификации файла с точностью хотя бы до целых секунд (я уж молчу про дробную часть секунды).

Когда на решение тривиальных или мало-средней сложности задач (не относящихся к базам банных вообще, и к ФБ в частности) тратятся дни, надо срочно прекращать этот .bat-бред, от нажав в себе Ctrl-Break.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141352
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидИли попробуй заставить его выводить время всегда в формате HH:mm:ss, даже когда значение числа часов во времени менее 10. Или дату в формате ansi.
Это, как раз, не проблема... ;)
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141353
Фотография zirra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид> числа часов во времени менее 10. Или дату в формате ansi.
Шёл бы ты отдохнуть чтоль... Ищется на раз-два-три в Гугеле, в котором ты, наверное, забанен...

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141364
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидОказалось в итоге, что внутри условных веток ("if ... ( ... )") могут быть траблы на ровном месте именно с командами... которые надо выносить в процедуры и дергать через call:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
...
if ... call :метка
...
goto :EOF

:метка
rem забубённый код
...
Не надо пытаться внести в скобки то, что должно изолироваться в отдельном вызове.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141386
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zirraИщется на раз-два-три в ГугелеА ты не докапывайся до конкретного примера (с форматом часов). В stackoverflow, ес-сно, ответы почти на всё можно найти.
Я говорю про то, что cmd - убогая поделка 80-х годов, при реализации сценариев в которой надо быть постоянно готовым к гемору на ровном месте.
Ладно. Что-то слишком много слов про этот cmd.

2 Вано / WS. Давайте закроем эту тему ? Обсуждение куда-то совсем не в ту в сторону поехало.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141412
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тебе что-то тут нужно полезного? могу проредить, чтоб оставить только по теме
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141463
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидDBConstructorпеременные окружения обрамляются '%', а не '!'.Тссс! Никому не рассказывай про enabledelayedexpansion! А то вдруг раскусят, почему в следующем примере три последних значения времени одинаковые...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Batch:
@echo off

echo t1=%time%
ping -n 3 127.0.0.1 >nul
echo t2=%time%
ping -n 3 127.0.0.1 >nul
echo t3=%time%
ping -n 3 127.0.0.1 >nul
if .1.==.1. (
    echo t4=%time%
    ping -n 3 127.0.0.1 >nul
    echo t5=%time%
    ping -n 3 127.0.0.1 >nul
    echo t6=%time%
)

Output:
t1= 1:02:02,55
t2= 1:02:04,57
t3= 1:02:06,58
t4= 1:02:08,60
t5= 1:02:08,60
t6= 1:02:08,60

Только сейчас решил приглядеться к спойлеру. Смотри, как всё просто ;)
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
@echo off

echo t1=%time%
ping -n 3 127.0.0.1 >nul
echo t2=%time%
ping -n 3 127.0.0.1 >nul
echo t3=%time%
ping -n 3 127.0.0.1 >nul
if .1.==.1. (
  call echo t4=%%time%%
  ping -n 3 127.0.0.1 >nul
  call echo t5=%%time%%
  ping -n 3 127.0.0.1 >nul
  call echo t6=%%time%%
)


За всё время написания cmd скриптов ни разу не понадобилось использовать enabledelayedexpansion. И сейчас не могу понять зачем оно тебе.

ТаблоидDBConstructorНе могу понять, зачем ты дергаешь копию cmd, вместо того, чтобы просто выполнить команду "%fbsvcrun%" с параметрами.Да потому что при наличии некоторых символов в имени каталога, не пойму при каких именно но сильно подозреваю закрывающую круглую скобку, батник отказывается выполнять %fbsvcrun%, и пишет аналог 'bad command or file name'.
Чудеса... Можешь воспроизвести в explain?

ТаблоидЛадно, леший с ним, этим cmd.exe. Убогая среда, как и вся ось, её содержащая. Попробуй, к примеру, объявить в батнике переменную и прочитать в неё из файла вот этот текст: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" " http://www.w3.org/TR/html4/strict.dtd">.
Сам попробуй! ;)
Код: powershell
1.
@for /f "tokens=* delims=" %%i in (test.xml) do echo %%i
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141465
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan_Pisarevsky,

оставь только 1-й ответ ДСа, остальное всё - выкини, плз. И лучше топег этот забетонировать.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141476
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид, ну ё-моё!... И нафига, спрашивается, я показывал как решаются упомянутые тобой траблы?
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141488
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да не надо ничего удалять, закройте просто и
всё, если Таблоиду не нужно / не интересно.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141496
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отлично. А теперь еще разок прочитаем, что я написал ранее:Таблоидобъявить в батнике переменную и прочитать в неё из файла вот этот текст: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" " http://www.w3.org/TR/html4/strict.dtd">. И посмотрим в то, что делает этот самый cmd.exe - см аттач.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141497
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗЫ. Это я ответил на вот это:DBConstructorСам попробуй! ;)
Код: powershell
1.
@for /f "tokens=* delims=" %%i in (test.xml) do echo %%i
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141499
Зимаргл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Таблоид,

если тебе нужен более продвинутый язык скриптов, используй c/jscript или powerhell или что то типа D/Python.

Непонятно, чего разнылся, это же тебе нехарактерно.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141505
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зимарглчего разнылсяГде нытьё ты увидел ? Просто задолбало преодолевать "горные хребты" размером с табуретку.
Имелась задача сбацать то, что будет запускаться на любой винде, даже на старье. Я недооценил объем гемора, который таился в cmd, вот и вся история.
Ладно, в топку это всё.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39141510
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидОтлично. А теперь еще разок прочитаем, что я написал ранее:Таблоидобъявить в батнике переменную и прочитать в неё из файла вот этот текст: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" " http://www.w3.org/TR/html4/strict.dtd">. И посмотрим в то, что делает этот самый cmd.exe - см аттач.
Да без проблем...
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
@echo off
set hdr=
for /f "tokens=* delims=" %%i in (test.xml) do (
  call set hdr="%%i"
  call :echo_hdr
)
goto :eof

:echo_hdr
for /f "tokens=* delims=" %%j in (%hdr%) do echo %%~j



P.S. Конечно, я полностью согласен с твоим мнением, что cmd довольно угловат и что некоторые вещи треднореализуемы - приходится чесать левой пяткой за правым ухом. Под виндой, любители "неограниченных" возможностей скриптов пользуют VBS и PowerShell, а некоторые изощренные любители баша ставят MSYS2 . Но cmd не нужно устанавливать в системе дополнительно и на нем реализуемо подавляющее большинство задач, которые принято решать с помощью скриптов.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142448
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидDBConstructorНе могу понять, зачем ты дергаешь копию cmd, вместо того, чтобы просто выполнить команду "%fbsvcrun%" с параметрами.Да потому что при наличии некоторых символов в имени каталога, не пойму при каких именно но сильно подозреваю закрывающую круглую скобку, батник отказывается выполнять %fbsvcrun%, и пишет аналог 'bad command or file name'.Вот, опять поймал только что. Никаких "нехороших" символов в имени каталога нет. Утилита fbsvcmg.exe - стопудово в этом каталоге есть, см. вывод dir ... | findstr.
А команда выполняться - "не хочет".

Создаем батник:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
@echo off
setlocal enabledelayedexpansion enableextensions

set fbc=C:\MIX\firebird\fb30
set port=3333

set fbo=info_server_version info_implementation info_user_dbpath info_get_env info_get_env_lock info_get_env_msg info_svr_db_info info_version info_capabilities
for /d %%s in ( %fbo% ) do (
  set fbs=%fbc%\fbsvcmgr.exe localhost/%port%:service_mgr user foo password bar %%s
  echo Command: !fbs!
  dir /-c %fbc%\fbsvcmgr.exe | findstr /i fbsvcmgr
  !fbs!
  echo -------------------------------
)

Меняем в нём переменные fbc & port на "свои" (это каталог ФБ-бинарников и порт прослушки).
Запускаем - и получаем обломы:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
Command: C:\MIX\firebird\fb30\fbsvcmgr.exe localhost/3333:service_mgr user foo password bar info_server_version
04.01.2016  08:43            228352 fbsvcmgr.exe
Системе не удается найти указанный путь.
-------------------------------
Command: C:\MIX\firebird\fb30\fbsvcmgr.exe localhost/3333:service_mgr user foo password bar info_implementation
04.01.2016  08:43            228352 fbsvcmgr.exe
Системе не удается найти указанный путь.
-------------------------------
Command: C:\MIX\firebird\fb30\fbsvcmgr.exe localhost/3333:service_mgr user foo password bar info_user_dbpath
04.01.2016  08:43            228352 fbsvcmgr.exe
Системе не удается найти указанный путь.
-------------------------------
Command: C:\MIX\firebird\fb30\fbsvcmgr.exe localhost/3333:service_mgr user foo password bar info_get_env
04.01.2016  08:43            228352 fbsvcmgr.exe
Системе не удается найти указанный путь.
-------------------------------
Command: C:\MIX\firebird\fb30\fbsvcmgr.exe localhost/3333:service_mgr user foo password bar info_get_env_lock
04.01.2016  08:43            228352 fbsvcmgr.exe
Системе не удается найти указанный путь.
-------------------------------
Command: C:\MIX\firebird\fb30\fbsvcmgr.exe localhost/3333:service_mgr user foo password bar info_get_env_msg
04.01.2016  08:43            228352 fbsvcmgr.exe
Системе не удается найти указанный путь.
-------------------------------
Command: C:\MIX\firebird\fb30\fbsvcmgr.exe localhost/3333:service_mgr user foo password bar info_svr_db_info
04.01.2016  08:43            228352 fbsvcmgr.exe
Системе не удается найти указанный путь.
-------------------------------
Command: C:\MIX\firebird\fb30\fbsvcmgr.exe localhost/3333:service_mgr user foo password bar info_version
04.01.2016  08:43            228352 fbsvcmgr.exe
Системе не удается найти указанный путь.
-------------------------------
Command: C:\MIX\firebird\fb30\fbsvcmgr.exe localhost/3333:service_mgr user foo password bar info_capabilities
04.01.2016  08:43            228352 fbsvcmgr.exe
Системе не удается найти указанный путь.
-------------------------------

И так будет, пока не заменим "!fbs!" на "cmd !fbs!".

Так что "УГ этот ке-эм-дэ".
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142455
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидТак что "УГ этот ке-эм-дэ".
Говорили же тебе: не надо его гнуть в непредусмотренном направлении.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
@echo off
rem setlocal enabledelayedexpansion enableextensions

set fbc=C:\Program Files (x86)\Firebird\Avalerion
set port=3050
set fbs="%fbc%\fbsvcmgr.exe"

set fbo=info_server_version info_implementation info_user_dbpath info_get_env info_get_env_lock info_get_env_msg info_svr_db_info info_version info_capabilities
for /d %%s in ( %fbo% ) do call :execcc %%s
goto :eof

:execcc
  dir /-c "%fbc%" | findstr /i fbsvcmgr
  %fbs% localhost/%port%:service_mgr user sysdba password masterkey %*
  echo -------------------------------
goto :eof
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142465
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И, кстати, цикл тут совершенно ни к чему, всю информацию сразу можно получить за один вызов.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142496
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovИ, кстати, цикл тут совершенно ни к чему, всю информацию сразу можно получить за один вызов.
Н-ды ? А вот на это что скажешь:

case-1.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
fbsvcmgr localhost/3333:service_mgr user foo password bar ^
    info_server_version ^
    info_implementation ^
    info_version
    info_version ^
    info_capabilities
Server version: WI-V3.0.0.32266 Firebird 3.0 Release Candidate 2
Server implementation: Firebird/Windows/Intel/i386
Service Manager Version: 2
Server capabilities:
  MULTI_CLIENT_SUPPORT
  REMOTE_HOP_SUPPORT
  QUOTED_FILENAME_SUPPORT

(т.е. - да, здесь всё ОК).

case-2.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
fbsvcmgr localhost/3333:service_mgr user foo password bar ^
    info_server_version ^
    info_implementation ^
    info_user_dbpath ^
    info_get_env ^
    info_get_env_lock ^
    info_get_env_msg ^
    info_svr_db_info ^
    info_version ^
    info_capabilities

Service isc_info_svc_user_dbpath requires SYSDBA permissions.  Reattach to the Service Manager using the SYSDBA account.
-Service isc_info_svc_get_env requires SYSDBA permissions.  Reattach to the Service Manager using the SYSDBA account.
-Service isc_info_svc_get_env requires SYSDBA permissions.  Reattach to the Service Manager using the SYSDBA account.
-Service isc_info_svc_get_env requires SYSDBA permissions.  Reattach to the Service Manager using the SYSDBA account.
-Service <Missing arg #1 - possibly status vector overflow> requires SYSDBA permissions.  Reattach to the Service Manager using the SYSDBA account.

(здесь получили по лбу для некоторых - не всех - ключиков; но для разрешённых ключиков - ничего не получили вообще; т.е. поток STDERR как бы полностью "перебил" собой поток STDOUT).
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142497
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
0xFF.

2 WS/Вано . Беседа стала иметь вкрапления полезности. Прошу пардону за предыдущий позыв грохнуть все сообщения топега, кроме первых двух. Оставьте их, плз - вдруг кому-нить да пригодятся :-)
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142501
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидА вот на это что скажешь:
Что есть о чём писать трекеру. Только бы понять что там делают циркумфлексы...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142502
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovТаблоидА вот на это что скажешь:
Что есть о чём писать трекеру. Только бы понять что там делают циркумфлексы...да циркумфлексами я просто длинную команду перенёс (разбил на короткие части) - так допускается делать в windows batch; в линухе это "\".
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142506
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovесть о чём писать трекеру. http://tracker.firebirdsql.org/browse/CORE-5066
(не уверен, что "поглощение" потоком STDERR данных потока STDOUT есть бага, ибо это всё была "единая команда", которая навернулась; но вот "Missing arg #1 - possibly status vector overflow" - да, это коряво как-то выглядит...)
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142578
DBConstructor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид, stderr и stdout это два разных потока, которые по умолчанию перенаправляются на псевдоустройство console. в cmd потоки stdout и stderr ловятся стандартным перенаправлением:
stdout: <команда> 1 >my.txt
stderr: <команда> 2 >my.txt
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142620
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBConstructorstderr и stdout это два разных потока, которые по умолчанию перенаправляются на псевдоустройство console. в cmd потоки stdout и stderr ловятся стандартным перенаправлениемСпасибо, я в курсах, как перехватить stdout & stderr ;-)
Речь о другом:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
fbsvcmgr localhost/3333:service_mgr user foo password bar ^
    info_server_version ^
    info_implementation ^
    info_user_dbpath ^
    info_get_env ^
    info_get_env_lock ^
    info_get_env_msg ^
    info_svr_db_info ^
    info_version ^
    info_capabilities ^
    1>fbsvc-stdout.log ^
    2>fbsvc-stderr.log

dir fbsvc-std???.log | findstr fbsvc-std

06.01.2016  10:15               628 fbsvc-stderr.log
06.01.2016  10:15                  0  fbsvc-stdout.log

Когда fbsvcmg напоролся на ошибку, он уже должен был успешно получить данные по первым двум ключикам (info_server_version и info_implementation; далее идёт ключик info_user_dbpath, который недоступен обычному усеру foo/bar).

Сведения по info_server_version и info_implementation можно было бы выдать в stdout!
Но тут нету вообще ничего в stdout, он пустой.

Впрочем, я не уверен, что это неправильно, поэтому в тикете бухтеть про это не стал :-)
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142622
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид"поглощение" потоком STDERR данных потока STDOUTА в где ты видишь такое "поглощение" ?
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142700
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladТаблоид"поглощение" потоком STDERR данных потока STDOUTА в где ты видишь такое "поглощение" ?Запусти вот этот батник (foo / bar - непривилегированный усер):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
fbsvcmgr localhost/3333:service_mgr user foo password bar ^
    info_server_version ^
    info_implementation ^
    1>fbsvc-stdout_1.log 2>fbsvc-stderr_1.log

fbsvcmgr localhost/3333:service_mgr user foo password bar ^
    info_server_version ^
    info_implementation ^
    info_user_dbpath ^
    1>fbsvc-stdout_2.log 2>fbsvc-stderr_2.log


В результате первой команды файл fbsvc-stdout_1.log будет таким:
===
Код: plaintext
1.
Server version: WI-V3.0.0.32266 Firebird 3.0 Release Candidate 2
Server implementation: Firebird/Windows/Intel/i386
===

В результате второй команды файл fbsvc-stdout_2.log будет пустым. А в fbsvc-stderr_2.log будет только "Service isc_info_svc_user_dbpath requires SYSDBA permissions...", т.е. мы вообще не увидим "Server version" и "Server implementation".
Не знаю, как это правильно назвать: "поглощением" или еще как-то... но когда fbsvcmgr выполнял действия согласно вот этим ключикам:
info_server_version
info_implementation
info_user_dbpath
- то ведь он ПОЛУЧАЛ некоторые данные (НЕ ошибку) по первым двум из них, так или нет ? И если так, то почему не выдал в stdout ?
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39142731
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоидто ведь он ПОЛУЧАЛ некоторые данные (НЕ ошибку) по первым двум из них, так или нет ?Нет. Он получил ошибку и не читает буфер с данными, ибо ошибка и буферу доверять низзя.
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39143145
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladОн получил ошибку и не читает буфер с данными, ибо ошибка и буферу доверять низзя.А если fbsvcmgr action_db_stats, получив (мета)данные по 100 таблицам, вдруг наткнётся на трабл в 1001-ой - то как, "доверяем буферу" или нет ?
...
Рейтинг: 0 / 0
ISQL: вещает "Unable to open", хотя скрипт стопудово есть
    #39143207
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

та порция данных, которая пришла с ошибкой в статусе - будет отброшена.
Разница в том, что action_db_stats получает данные за множество вызовов, а в твоём примере - вызов один.
...
Рейтинг: 0 / 0
60 сообщений из 60, показаны все 3 страниц
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / ISQL: вещает "Unable to open", хотя скрипт стопудово есть
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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