Bash on Ubuntu в среде Windows
|
|
semoder
| Отредактировано semoder - 09.04.2016, 08:38 |
|
Может я чтото упускаю, но в чем может быть проблема?
Никак не могу установить чтобы протестить....
|
|
|
Lenchik
| |
Почетный
|
semoder, У всех так. Установите EN-US языковый пакет. Переключите интерфейс на английский и всё заработает, будет y а не ? После установки интерфейс можно обратно переключить на русский. Желательно только "Язык программ не поддерживающих юникод" оставить английский США, а то замучаетесь с крякозябрами бороться, здесь и в командной строке то же.
Основная проблема этого bash он не поддерживает команду ln -s но поддерживает просто ln, без -s, наверное в жесткие ссылки виндовс переводит. Теоретически ln -s это те же ярлыки виндовс, только сильно урезанные. Если перепишут саму утилиту ln что бы она в варианте ln -s создавала виндовые ярлыки, то должно всё заработать.
|
|
|
FULLINU
| |
|
Цитата Lenchik ( ) semoder, У всех так. А что насчёт русских символов (папка профиля юзера) в пути? Понимает ли их uwp-убунта?
|
|
|
Lenchik
| |
Почетный
|
FULLINU, там всё в порядке. Косяк с кодировкой общий для всех приложений в 14316. И как видно оно и кодировку для клавиатуры неправильно воспринимает, иначе не смотря на "?" они бы сработало по нажатию Y или хотя бы Д. Внутри bash не очень то и нужен русский язык. Например при компиляции из исходников. Linux добавить кодовою страницу просто. Если нужно, можете сами добавить.
Не срабатывает установка bash из магазина, из командной сроки. Это к самой начинке bash не относится.Добавлено (09.04.2016, 15:34) --------------------------------------------- Попробовал просто имидж с помощью tar развернуть. Печалька, символические ссылки дают ошибку:
Исправят, нет? И найдут ли вообще решение проблемы? Создали бы виртуальный жесткий диск отформатированный в EXT и проблема бы исчезла, а то у них вся файловая структура просто лежит в папках NTFS.
|
|
|
rodger_rulez
| |
|
Цитата Lenchik ( ) Исправят, нет? Думаю, что исправят. Иначе, какой смысл от среды линукс в винде? я не знаю, для чего еще нужен линукс, как для сборки чего-то из сорцов)
|
|
|
sysprg
| Отредактировано sysprg - 09.04.2016, 19:49 |
Автор темы
Почетный
|
Цитата semoder ( ) Может я чтото упускаю Попробуйте выполнить "echo Y| bash" ( кавычки не копируйте ). Если и это не прокатит, то тогда действительно установите сначала языковый пакет en-us.
|
|
|
Lenchik
| |
Почетный
|
sysprg, если не ошибаюсь это вы за интеграцию утилит nix в виндовс.
Попробуйте из виндовс из командной строки набрать bash "путь и имя линукс скрипта". То есть в bat файл скрипт вставить можно. В конце скрипта можно вписать exit.
|
|
|
deep5805
| Отредактировано deep5805 - 09.04.2016, 20:53 |
Почетный
|
2 дня борьбы с bash показали что до идеала ещё далеко радует только одно-это сближение и взаимопроникновение двух великих культур Linux(unix) и Windows хотя я всегда считаю что без знания основ работы в консоли не понять всю внутреннюю сущность великой науки которая называется информатизация. Эти два дня удивительная гимнастика для мозга. Спасибо тем кто соединяет миры. В соседней теме куча народу бьется с GUI -ем хотя решения их проблем лежат в написании пары тройки скриптов и просмотра логов .
|
|
|
sysprg
| Отредактировано sysprg - 09.04.2016, 21:12 |
Автор темы
Почетный
|
Lenchik, В данном, конкретном случае нет необходимости бэтч создавать. Достаточно просто подготовить правильный ответ и передать его bash. Это исключит вывод сообщения на консоль и считывание ответа с консоли. МОЖЕТ ИЗБАВИТЬ от необходимости устанавливать языковый пакет хотя бы для установки Linux. А запуск bash из бэтч-файла наверняка пройдет, но когда стартанет bash, то он уже станет считывать из своей консоли и следующая команда из бэтч файла выполнится лишь тогда, когда РУЧКАМИ будет выполнена Exit на консоли bash. И поэтому Exit из бэтч файла завершит уже cmd.exe. Все в точности также, как и при запуске diskpart из бэтч файла.
|
|
|
deep5805
| |
Почетный
|
Цитата sysprg ( ) установите сначала языковый пакет en-us. Мне кажется это обязательное условие
|
|
|
sysprg
| |
Автор темы
Почетный
|
Цитата deep5805 ( ) Мне кажется это обязательное условие Ну потратьте 2 секунды на то, чтобы проверить предложенный мной рецепт, если еще не установили - есть основания надеяться на то, что пайп может сработать независимо от языка консоли, поскольку с консоли НИЧЕГО СЧИТЫВАТЬСЯ НЕ БУДЕТ. Не получится, поставите пакет.
|
|
|
Lenchik
| |
Почетный
|
sysprg, ваш рецепт не работает, я уже проверил.
Я не это имел ввиду. Уже после установки этого дополнения можно из командной строки windows запустить bash с аргументом в виде имени файла со скриптом (name.sh) и этот скрипт выполнится без ручного входа в среду bath. Если в конце скрипта вписать exit то он и вернется обратно в командную строку windows.
Это же вы в личку писали про grep и его применении в среде windows. Может даже удастся и текстовый вывод из одной среды в другую перенаправить.
|
|
|
sysprg
| |
Автор темы
Почетный
|
Цитата Lenchik ( ) то же вы в личку писали про grep и его применении в среде windows ОК, проверю завтра ( сегодня сижу под 10586 ) и буду надеяться, что сработает - меня это очень обрадует.
|
|
|
sysprg
| Отредактировано sysprg - 10.04.2016, 14:46 |
Автор темы
Почетный
|
Тесты совместного использования bash и команд windows показали: 1. из бэтч файла можно запускать bash-скрипты 2. bash-скрипт не умеет выполнять команды windows и выдает сообщение "command not found" == команда не найдена 3. пайпинг ( |, передача вывода ) не поддерживается. Так что единственный доступный способ обеспечения обмена данными между командами Windows и командами или скриптами bash: файлы. Но даже при этом есть одна проблема: Windows завершает строки символами 0d, 0a, а все команды ubantu лишь один символ 0a.
|
|
|
Arti42000
| |
|
А что делать нищебродам с Single Language, в которой никак язык не переключить?
|
|
|