Skip to content

Commit

Permalink
Merge pull request EvilBeaver#33 from pumbaEO/linuxport
Browse files Browse the repository at this point in the history
Портирование скриптов для выполнения в linux
  • Loading branch information
artbear committed Dec 1, 2015
2 parents fa8457f + bbe0bdb commit 30c235f
Show file tree
Hide file tree
Showing 8 changed files with 276 additions and 203 deletions.
17 changes: 12 additions & 5 deletions src/gitsync/src/cmd-builder.os
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,17 @@

Перем мЗаписьТекста;
Перем мПуть;
Перем ЭтоWindows;

Функция Открыть(Знач Путь = "") Экспорт

Если ПустаяСтрока(Путь) Тогда
мПуть = ВременныеФайлы.НовоеИмяФайла(".bat");
мПуть = ВременныеФайлы.НовоеИмяФайла(?(ЭтоWindows, ".bat", ".sh"));
Иначе
мПуть = Путь;
КонецЕсли;

мЗаписьТекста = Новый ЗаписьТекста(мПуть, "cp866");
Кодировка = ?(ЭтоWindows, "cp866", "utf-8");
мЗаписьТекста = Новый ЗаписьТекста(мПуть, Кодировка);

Возврат мПуть;

Expand All @@ -30,8 +31,11 @@
Закрыть();

ПутьПакетногоФайла = мПуть;

СтрокаЗапуска = "cmd.exe /C """ + ПутьПакетногоФайла + """";
Если ЭтоWindows Тогда
СтрокаЗапуска = "cmd.exe /C """ + ПутьПакетногоФайла + """";
Иначе
СтрокаЗапуска = "sh '" + ПутьПакетногоФайла + "'";
КонецЕсли;

КодВозврата = "";
ЗапуститьПриложение(СтрокаЗапуска,, Истина, КодВозврата);
Expand All @@ -56,3 +60,6 @@
Открыть();
КонецЕсли;
КонецПроцедуры

СистемнаяИнформация = Новый СистемнаяИнформация;
ЭтоWindows = Найти(НРег(СистемнаяИнформация.ВерсияОС), "windows") > 0;
2 changes: 1 addition & 1 deletion src/gitsync/src/gitsync.os
Original file line number Diff line number Diff line change
Expand Up @@ -270,7 +270,7 @@
Функция ПолучитьПутьКБазеДанныхХранилища(Знач ПутьКХранилищу)
ФайлПутиКХранилищу = Новый Файл(ПутьКХранилищу);
Если ФайлПутиКХранилищу.Существует() и ФайлПутиКХранилищу.ЭтоКаталог() Тогда
ФайлБазыДанныхХранилища = ФайлПутиКХранилищу.ПолноеИмя + "\1cv8ddb.1CD";
ФайлБазыДанныхХранилища = ОбъединитьПути(ФайлПутиКХранилищу.ПолноеИмя, "1cv8ddb.1CD");
ИначеЕсли ФайлПутиКХранилищу.Существует() Тогда
ФайлБазыДанныхХранилища = ФайлПутиКХранилищу.ПолноеИмя;
Иначе
Expand Down
4 changes: 3 additions & 1 deletion src/gitsync/src/multi-controller.os
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
//
////////////////////////////////////////////////////////////////////////////

#Использовать cmdline

Перем мКонтроллер;
Перем мНастройки;
Перем Лог;
Expand Down Expand Up @@ -41,7 +43,7 @@
// Вспомогательные методы

Функция ИмяФайлаБазыХранилища(Знач Каталог)
Возврат Каталог + "\1cv8ddb.1CD";
Возврат ОбъединитьПути(Каталог, "1cv8ddb.1CD");
КонецФункции

Функция НеобходимоСинхронизироватьХранилище(Знач Репо)
Expand Down
124 changes: 77 additions & 47 deletions src/gitsync/src/unpack.os

Large diffs are not rendered by default.

7 changes: 6 additions & 1 deletion src/tempfiles/ВременныеФайлы.os
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@

Перем мВременныеФайлы;
Перем Лог;
Перем ЭтоWindows;

/////////////////////////////////////////////////////////////////////////
// Программный интерфейс
Expand All @@ -24,7 +25,8 @@
Функция СоздатьФайл(Знач Расширение = "tmp") Экспорт

ИмяФайла = НовоеИмяФайла(Расширение);
ЗаписьТекста = Новый ЗаписьТекста(ИмяФайла, КодировкаТекста.ANSI);
Кодировка = ?(ЭтоWindows, КодировкаТекста.ANSI, "utf-8");
ЗаписьТекста = Новый ЗаписьТекста(ИмяФайла, Кодировка);
ЗаписьТекста.Закрыть();
Возврат ИмяФайла;

Expand Down Expand Up @@ -83,5 +85,8 @@

КонецФункции

СистемнаяИнформация = Новый СистемнаяИнформация;
ЭтоWindows = Найти(НРег(СистемнаяИнформация.ВерсияОС), "windows") > 0;

мВременныеФайлы = Новый Массив;
Лог = Логирование.ПолучитьЛог("oscript.app.tempfiles");
15 changes: 11 additions & 4 deletions src/tool1cd/config-storage.os
Original file line number Diff line number Diff line change
Expand Up @@ -3,24 +3,28 @@

Перем мКаталогВнешнихПрограмм;
Перем Лог;
Перем ЭтоWindows;

//////////////////////////////////////////////////////////////////////////////////////////////////
// ПРОГРАММНЫЙ ИНТЕРФЕЙС

Процедура ВыгрузитьВерсиюКонфигурации(Знач ФайлХранилища, Знач ВыходнойФайл, Знач НомерВерсии = 0) Экспорт

ЛогTool1CD = ВременныеФайлы.НовоеИмяФайла("txt");

СтрокаЗапуска = """" + ПутьTool1CD() + """ """ + ФайлХранилища
+ """ -l """ + ЛогTool1CD
ПрефиксПути = ?(ЭтоWindows = Ложь, "Z:", "");
СтрокаЗапуска = """" + ПутьTool1CD() + """ """ + ПрефиксПути + ФайлХранилища
+ """ -l """ + ПрефиксПути + ЛогTool1CD
+ """ -q -ne -drc "
+ Строка(НомерВерсии)
+" """ + ВыходнойФайл +"""";
+" """ + ПрефиксПути + ВыходнойФайл +"""";

ФайлИсходника = Новый Файл(ВыходнойФайл);
ФайлЛога = Новый Файл(ЛогTool1CD);

КодВозврата = "";
Если НЕ ЭтоWindows Тогда
СтрокаЗапуска = "wine "+СтрокаЗапуска;
КонецЕсли;
Лог.Отладка(СтрокаЗапуска);
ЗапуститьПриложение(СтрокаЗапуска, "", Истина, КодВозврата);
Если ФайлЛога.Существует() Тогда
Expand Down Expand Up @@ -57,4 +61,7 @@
Возврат Текст;
КонецФункции

СистемнаяИнформация = Новый СистемнаяИнформация;
ЭтоWindows = Найти(НРег(СистемнаяИнформация.ВерсияОС), "windows") > 0;

Лог = Логирование.ПолучитьЛог("oscript.lib.tool1cd");
16 changes: 11 additions & 5 deletions src/tool1cd/table-reader.os
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
Перем мКаталогВнешнихПрограмм;
Перем мРабочийКаталог;
Перем Лог;
Перем ЭтоWindows;

Процедура ОткрытьФайл(Знач ИмяФайла) Экспорт
мИмяФайлаБазы = ИмяФайла;
Expand All @@ -25,15 +26,17 @@
Функция ВыгрузитьТаблицыВXML(Знач ИменаТаблиц) Экспорт

ЛогTool1CD = ВременныеФайлы.НовоеИмяФайла("txt");

ПрефиксПути = ?(ЭтоWindows = Ложь, "Z:", "");
СтрокаЗапуска = """" + ПутьTool1CD() + """ "
+ """" + мИмяФайлаБазы + """"
+ " -l """ + ЛогTool1CD + """"
+ """"+ ПрефиксПути + мИмяФайлаБазы + """"
+ " -l """ +ПрефиксПути+ ЛогTool1CD + """"
+ " -q -ne -ex "
+ РабочийКаталог() + " " + ИменаТаблиц;
+ ПрефиксПути + РабочийКаталог() + " " + ИменаТаблиц;

КодВозврата = "";

Если НЕ ЭтоWindows Тогда
СтрокаЗапуска = "wine "+СтрокаЗапуска;
КонецЕсли;
Лог.Отладка(СтрокаЗапуска);
ЗапуститьПриложение(СтрокаЗапуска, "", Истина, КодВозврата);

Expand Down Expand Up @@ -208,4 +211,7 @@

КонецФункции

СистемнаяИнформация = Новый СистемнаяИнформация;
ЭтоWindows = Найти(НРег(СистемнаяИнформация.ВерсияОС), "windows") > 0;

Лог = Логирование.ПолучитьЛог("oscript.lib.tool1cd");
Loading

0 comments on commit 30c235f

Please sign in to comment.