Поиск волонтерской помощи программиста (маленький скрипт)

Все остальное, мало относящееся к ГИС.
Игорь Белов
Гуру
Сообщения: 1600
Зарегистрирован: 04 янв 2011, 22:00
Статьи: 12
Проекты: 1
Репутация: 996
Откуда: Казань

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Игорь Белов » 31 авг 2016, 09:49

Давайте начнём с рабочей среды. Какая ОС? Установлен ли QGIS?

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2893
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 54
Ваше звание: Лиса
Откуда: **
Контактная информация:

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Natalia Novoselova » 31 авг 2016, 14:51

Игорь Белов писал(а):Давайте начнём с рабочей среды. Какая ОС? Установлен ли QGIS?
Дома у меня соит Windows 8, QGIS 2.16.2

Игорь Белов
Гуру
Сообщения: 1600
Зарегистрирован: 04 янв 2011, 22:00
Статьи: 12
Проекты: 1
Репутация: 996
Откуда: Казань

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Игорь Белов » 31 авг 2016, 15:37

Хорошо. Буду предполагать, что Вы использовали готовую сборку QGIS, а не устанавливали OSGeo4W с сайта OSGeo.

На рабочем столе, надеюсь, имеется кнопка пуск. Жмём её, чтобы добраться до ярлыка "QGIS 2.16". Внутри среди ярлыков запуска GRASS, QGIS, SAGA GIS должен быть ярлык "Setup". Он запускает управление установкой OSGeo4W. Если не получается найти "Setup", можете просто загрузить инсталлятор с сайта OSGeo. В обоих случаях дальше действуете так, как описано в замечательной статье Установка QGIS/GRASS с помощью OSGeo4W.

Задача облегчается тем, что всё необходимое уже установлено, нужно только добавить один пакет. Доберёмся до выбора пакетов. В современной версии в диалоге выбора пакетов есть строка поиска. Наберём в ней "msys". В дереве пакетов останется только ветка "Commandline_Utilities". Ткнём в плюсик, чтобы открыть её, и увидим два пакета. Нам нужен "msys: Minimal SYStem", ткнём в него, чтобы выбрать для установки.
img20160831091855.png
img20160831091855.png (5.81 КБ) 2710 просмотров
После нажатия [Далее] скачается и установится MSYS. На рабочем столе должен появиться ярлык "MSYS Shell". Дважды щёлкнем на нём, чтобы запустить консоль.

Что интересно, после установки MSYS Вы получите сразу два Unix-окружения. "OSGeo4W Shell", построенный на GnuWin32 и установленный вместе с QGIS, тоже начнёт понимать юниксовые команды.

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2893
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 54
Ваше звание: Лиса
Откуда: **
Контактная информация:

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Natalia Novoselova » 01 сен 2016, 04:44

Все делала по вашей инструкции, но при выборе загрузки был только один вариант "msys: Minimal SYStem"

Но срипт, открывающий консоль, у меня называется OSGeo4W Shell (ярлык "MSYS Shell" не образуется).
Хотя сам msys установился:
Вложения
msys.jpg
msys.jpg (96.33 КБ) 2671 просмотр
Последний раз редактировалось Natalia Novoselova 01 сен 2016, 05:00, всего редактировалось 1 раз.

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2893
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 54
Ваше звание: Лиса
Откуда: **
Контактная информация:

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Natalia Novoselova » 01 сен 2016, 04:45

При запуске OSGeo4W Shell вот такая генерирутеся консоль:

И что теперь делать дальше? Там нужно ввести адрес директории, где лежат html файлы. И как это сделать (если эта вообще та консоль)
Вложения
OSGeo4W-Shell_pic.jpg
OSGeo4W-Shell_pic.jpg (44.53 КБ) 2671 просмотр

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3369
Зарегистрирован: 11 апр 2008, 21:09
Статьи: 33
Проекты: 9
Репутация: 516
Ваше звание: Author
Контактная информация:

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Denis Rykov » 01 сен 2016, 04:49

Перейти в неё (cd) и использовать команду что я привёл в исходном виде, либо указать в ней нужную директорию вместо "."
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2893
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 54
Ваше звание: Лиса
Откуда: **
Контактная информация:

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Natalia Novoselova » 01 сен 2016, 05:11

Denis Rykov писал(а):Перейти в неё (cd) и использовать команду что я привёл в исходном виде, либо указать в ней нужную директорию вместо "."
Да, при вводе "cd" я перешла в нужный директорий в консоле.
Но перед вводом кода скрипта, наверное, тоже нужно ввести что-то, что давало бы знак, что это команда?

Поскольку при копировании кода скрипта сразу после адреса - она пишет "The system cannot find the file spicified"
Вложения
msys2.jpg
msys2.jpg (19.99 КБ) 2658 просмотров

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3369
Зарегистрирован: 11 апр 2008, 21:09
Статьи: 33
Проекты: 9
Репутация: 516
Ваше звание: Author
Контактная информация:

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Denis Rykov » 01 сен 2016, 05:18

find в OSGeo4W Shell - это не тот find, что вам нужен, нужна именно консоль MSYS Shell. Она же у вас установлена судя по скриншоту, вот и запускайте её. В моём случае она запускается по следующему адресу:

Код: Выделить всё

C:\OSGeo4W\apps\msys\msys.bat 
Вложения
mingw.png
mingw.png (13.87 КБ) 2655 просмотров
Spatial is now, more than ever, just another column- The Geometry Column.

Игорь Белов
Гуру
Сообщения: 1600
Зарегистрирован: 04 янв 2011, 22:00
Статьи: 12
Проекты: 1
Репутация: 996
Откуда: Казань

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Игорь Белов » 01 сен 2016, 07:35

Если не видите значка "MSYS Shell" на рабочем столе, запускайте прямо отсюда:
Вложения
msys_bat.png
msys_bat.png (3.92 КБ) 2637 просмотров

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2893
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 54
Ваше звание: Лиса
Откуда: **
Контактная информация:

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Natalia Novoselova » 02 сен 2016, 03:58

Я хочу довести до конца этот маленький пример, хоть это мне непросто, поскольку вещи, очевидные вам (и, наверное, изложенные где-то в мануалах) мне не известны. Поэтому проблемы на каждом шагу буквально.
Но интересно - странно, ведь моя задача никак с ГИС средой не связана.. почему же тогда для решения мы привлекаем ГИС среду (OSGeo4W устанавливается через QGIS).
А вы говорили, что это мультиплатформенный скрипт. Как то не увязывается - а если человек не работает с QGIS, он это не сможет сделать?


Открыла msys консоль. Но она теперь не хочет копировать никакой текст туда (методом вставить мышкой, или ctrrl-v там не работает). Я проверила (вбив вручную адрес) - в нужный каталог он вроде вошел? Это папка сейчас с адресом C:\test\testmsys\book_0

Не хочу случайно стереть <br> не там, где нужно.

Но дальше - не могу поверить, что сложный код нужно вбивать по букве в консоль вручную. Как-то его туда скопировать можно?
Вложения
msys3.jpg
msys3.jpg (58.25 КБ) 2588 просмотров

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3369
Зарегистрирован: 11 апр 2008, 21:09
Статьи: 33
Проекты: 9
Репутация: 516
Ваше звание: Author
Контактная информация:

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Denis Rykov » 02 сен 2016, 04:25

Никакую ГИС среду мы не привлекаем, просто OSGeo4W удобный инсталлятор в том числе и не относящихся к ГИС пакетов. Вы с таким же успехом могли бы скачать MSYS с официального сайта, эффект был бы тот же самый. Просто в OSGeo4W пакеты ещё и легко обновлять. Насчёт вставки - просто нажимаете в области консоли правой кнопкой мыши и всё, что находится в буфере обмена - попадает в консоль, либо нажимаете правой кнопкой в заголовке окна и выбираете: Изменить - Вставить.
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2893
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 54
Ваше звание: Лиса
Откуда: **
Контактная информация:

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Natalia Novoselova » 02 сен 2016, 05:01

Denis Rykov писал(а):. Насчёт вставки - просто нажимаете в области консоли правой кнопкой мыши и всё, что находится в буфере обмена - попадает в консоль, либо нажимаете правой кнопкой в заголовке окна и выбираете: Изменить - Вставить.

Да, спасибо, теперь получилось!
Denis Rykov писал(а):Никакую ГИС среду мы не привлекаем, просто OSGeo4W удобный инсталлятор в том числе и не относящихся к ГИС пакетов. Вы с таким же успехом могли бы скачать MSYS с официального сайта, эффект был бы тот же самый. Просто в OSGeo4W пакеты ещё и легко обновлять.
Да, понятно. Что это связано с ГИС наводит "Geo" в названи OSGeo4W, и как-то логично было приписывать и все инсталлируемые пакеты - также относящимися к ГИС среде. Но поняла, что это что-то общее и OSGeo4W просто их инсталлирует удобным образом.

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2893
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 54
Ваше звание: Лиса
Откуда: **
Контактная информация:

Re: Поиск волонтерской помощи программиста (маленький скрипт

Сообщение Natalia Novoselova » 02 сен 2016, 06:53

Александр Мурый писал(а):Да, просьба ко всем отвечающим не гнушаться краткого комментария.
Да.. кратко не получается часто в моем случае..


https://getsatisfaction.com/calibre2opd ... y_17810764
People from GIS-lab gave me one more script for this case.
This one is cross-platform; you can use it by any UNIX-like environment (projects, creating the UNIX environment for Windows - Cygwin, MinGW/MSYS, GnuWin32)

I applied it by OSGeo4W installer using the msys: Minimal SYStem packet.

So, in the console (generating by msys packet) you should go to the directory with html files and insert the following code:

find . -type f -name '*.html' -exec sed -i 's/<br>//g' {} \+



I tested it – it also works correctly!

Just for your help. Maybe you can use these codes in the permanent solution of this problem.

Ответить

Вернуться в «Все остальное»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя