Комментарии 54
Чем только люди не занимаются, вместо того чтобы нормальную консоль сделать :-))
-23
>>вместо того чтобы нормальную консоль сделать :-))
Чем она «ненормальна»?
Чем она «ненормальна»?
+10
Наверно имелось ввиду сделать один нормальный shell и не плодить сущностей.
-7
PowerShell вполне симпатичная штука. Но вот консоль как эмулятор терминала всё так же убог. И если в том же линукс — не нравится один эмулятор, используем другой, то в винде так просто не заменить. Тот же Console2 сделан через жуткие костыли. Из-за чего периодечески выдает жуткие баги. Чем убог эмулятор терминала в винде: отсутствует поддержка unicode, простым образом не меняются размеры буфера (Console2 частично решает), нет вкладок для разных процессов (в линукс идеология: программа эмулятор запускает процессы и рисует их текстовый вывод, в винде: программа, которой нужна консоль, создаёт своё окно консоли) — частично обходится Console2, но тоже криво. Далее недостаток cmd и powershell — в них нет истории, которая бы сохранялась между сеансами. Далее недостаток инфраструктуры — нет нормальных консольных инструментов. Поверьте, установка MinGW/MSYS (даже не cygwin) и Console2 намного упрожают жизнь, когда появляются bash, xargs, grep, sed, etc. Почему не сделать аналогичного в винде? Невозможно? Бред, возможно. Немного поломать совместимость в области консоли — это так страшно (с учётом, что то, что есть в чистом виде почти никто не использует)? Хотя можно попробоавть пойти любимым путём MS — старый интерфейс пусть работает как есть, но создать новый. Может прокатит.
+1
Можно запустить PS в другом эмуляторе терминала. Как вариант есть еще очень симпатичная штучка PoshConsole poshconsole.codeplex.com/
>>The first rich, graphical, interactive console.
>>The only PowerShell console with Quake Mode!
>>Multi-line input prompt inline the way consoles should be.
>>Global hotkeys can be tied to ScriptBlocks
>>Rich XAML templates for Out-UIElement output formatting
>>Each sequence of prompt, command, output are paired into a logical unit — a RichTextBox Paragraph.
>>Triple-Click to select a whole sequence.
>>Boatloads of configurable settings are available in the $Host.PrivateData.Settings variable.
>>Autohide upon losing focus.
>>Animation on hiding.
>>Customizable colors (optionally outside the 16 console colors) for each output type, and for each console color
>>Integrated graphical Progress display…
Quake mode особенно доставляет :D
При желании можно написать свою мини-IDE с блекджеком и шлюхами, но смысла в этом я вообще не вижу :)
>>The first rich, graphical, interactive console.
>>The only PowerShell console with Quake Mode!
>>Multi-line input prompt inline the way consoles should be.
>>Global hotkeys can be tied to ScriptBlocks
>>Rich XAML templates for Out-UIElement output formatting
>>Each sequence of prompt, command, output are paired into a logical unit — a RichTextBox Paragraph.
>>Triple-Click to select a whole sequence.
>>Boatloads of configurable settings are available in the $Host.PrivateData.Settings variable.
>>Autohide upon losing focus.
>>Animation on hiding.
>>Customizable colors (optionally outside the 16 console colors) for each output type, and for each console color
>>Integrated graphical Progress display…
Quake mode особенно доставляет :D
При желании можно написать свою мини-IDE с блекджеком и шлюхами, но смысла в этом я вообще не вижу :)
+1
мне бы IDE нормальный. poewrgui падает и вешается на 5-7 запуске 10 строчного скрипта…
0
Console2 это и есть другой эмулятор терминала. Без него вообще страшно. Но и он не решает все проблемы. Вроде я об этом и написал.
Где Юникод? 2012 год на дворе, второе десятилетие 21 века, 21 год как предложен Юникод.
Костыльность любого заменителя эмулятора терминала превышает разумные мерки.
Личная проблема PS — отсутствие истории (неужели так сложно?).
Где Юникод? 2012 год на дворе, второе десятилетие 21 века, 21 год как предложен Юникод.
Костыльность любого заменителя эмулятора терминала превышает разумные мерки.
Личная проблема PS — отсутствие истории (неужели так сложно?).
0
А что фон голубой?
-1
У «нормальной» консоли уже появились объектные операции?
+14
Объекты — это всё баловство. Отомрет. Как и мертворожденные редакторы кода, в которых программы надо мышкой собирать из узлов.
Текст, только текст. Простота и универсальность.
Текст, только текст. Простота и универсальность.
-29
Вам сколько лет?
+14
Баловство? Ну да, 640 кб тоже хватит всем.
+5
История нас рассудит :-)
-13
Уже рассудила. Не хватит. Так же как и plain text недостаточен для нормальной работы в современных условиях.
ЗЫ базы данных тоже не признаете? :)
ЗЫ базы данных тоже не признаете? :)
+7
Расскажешь мне, когда виндовс с этим вашим муляжем консоли будет доминировать на рынке серверов :-)
-15
Кажется, на брудершафт мы еще не пили.
Этот «муляж консоли» за счет объектных операций гораздо более функционален линуховой.
Этот «муляж консоли» за счет объектных операций гораздо более функционален линуховой.
+12
Так Windows и так доминирует на рынке серверов
www.idc.com/about/viewpressrelease.jsp?containerId=prUS22716111
в три раза обгоняет Linux.
То что Linux гораздо больше ставят бесплатно, так это уже не рынок, денег тут нет.
www.idc.com/about/viewpressrelease.jsp?containerId=prUS22716111
в три раза обгоняет Linux.
То что Linux гораздо больше ставят бесплатно, так это уже не рынок, денег тут нет.
+9
Когда придумывали UNIX компьютеры оперировали только с текстом и числами, который в текст и обратно легко можно было перевести. Поэтому идея что текст — уневерсальный протол связи между маленкими утилитами, которые можно собирать в цепочки под задачу, была естественна и полезна.
Но сейчас в большинстве случаев компьютеры оперируют бинарными потоками, мультимедийными данными, снабженными метаинформацией еще к тому-же.
Сегодня «консоль» должна объектный интерфейс, чтобы уметь разбирать и конвертировать между собою великое множество форматов данных средствами установленного на машине программного обеспечения.
Но сейчас в большинстве случаев компьютеры оперируют бинарными потоками, мультимедийными данными, снабженными метаинформацией еще к тому-же.
Сегодня «консоль» должна объектный интерфейс, чтобы уметь разбирать и конвертировать между собою великое множество форматов данных средствами установленного на машине программного обеспечения.
+6
> в большинстве случаев компьютеры оперируют бинарными потоками, мультимедийными данными, снабженными метаинформацией еще к тому-же.
Пруфлинк?
Пруфлинк?
-12
Видео, фотки, музыка. Файлы проектов для всевозможных программ редактирования всего этого добра.
Когда дело доходит то мультимедия юниксовая консоль перестает быть такой уж удобной. Например кодирование видео с помощью ffmpeg или gstreamer. Все скрыто в одной программе черном ящике. Пользователь должен запомнить или записать последовательность нужных ключей. Не всегда можно проследить за процессо и остановить не дожидаясь конца. А вот если бы поток видео\аудио можно было гнать по консоли как текст, было бы намного удобнее и понятнее.
Когда дело доходит то мультимедия юниксовая консоль перестает быть такой уж удобной. Например кодирование видео с помощью ffmpeg или gstreamer. Все скрыто в одной программе черном ящике. Пользователь должен запомнить или записать последовательность нужных ключей. Не всегда можно проследить за процессо и остановить не дожидаясь конца. А вот если бы поток видео\аудио можно было гнать по консоли как текст, было бы намного удобнее и понятнее.
+4
А что, в павершелле можно видео гонять?
-3
Не совсем понимаю, вот остановить q, есть man с помощью. Процесс кодирования показывает. Что то еще? Показывать видео в процессе кодирования? Мой нетбук кодирует 1 кадр за 2 секунды + видео будет подгружать и будет 1 кадр в 5 секунд. Думаю если плодить сложности то можно повысить подтребление.
А насчет ключей. В гуе обычно выбирается мышкой или параметры из профилей или вручную забивается битрейт и т.д. как минимум надо знать что означает каждое поле. А если вывести ВСЕ поля (например параметры x264) то интерфейс будет перегружен. В шеле же мы выбрали и все.
В консоли нужен только текст, т.к. человек может ввести информацию или камерой или голосом или с клавиатуры. Только вот голосом и с камеры требует высоконагруженной обработки. Да и все равно для взаимодействия используется язык состоящий из символов. В итоге работа Компьютер-Пользователь выходит в текст. Даже в граф. интерфейсе мы имеем тот же текст на вывод, но меньше на ввод.
А насчет ключей. В гуе обычно выбирается мышкой или параметры из профилей или вручную забивается битрейт и т.д. как минимум надо знать что означает каждое поле. А если вывести ВСЕ поля (например параметры x264) то интерфейс будет перегружен. В шеле же мы выбрали и все.
В консоли нужен только текст, т.к. человек может ввести информацию или камерой или голосом или с клавиатуры. Только вот голосом и с камеры требует высоконагруженной обработки. Да и все равно для взаимодействия используется язык состоящий из символов. В итоге работа Компьютер-Пользователь выходит в текст. Даже в граф. интерфейсе мы имеем тот же текст на вывод, но меньше на ввод.
+1
Ну представте себе, что у вас есть Windows Movie Maker, у которого есть хороший стиль титров. Титры хотите наложить на склеенные между собой m2ts файлы с видеокамеры. Музыку вы хотите взять из клипа любимого артиста. И застримить по DLNA на телевизор.
Это вполне можно сделать средствами консоли на Linux. Набрать нужных утилит, гонять данные между ними сохраняя результат во временные папки. Утилитам передавать только пути и параметры. Можно написать bash скрипт который это будет делать.
Но представьте, что формат видео такой же нативный как и текст. Тогда можно просто написать чтото вроде этого
WMP.dlna.streem((«C:/clip1»+«C:/clip2»+«C:/clip3»).addTitle(«lala»).addAudio(«lolo»))
или лучше даже нарисовать граф обработки в какой нибудь визуальной среде. А граф этот можно сохранить и вызывать потом как программу.
>нужен только текст, потому что человек может…
Почему только? Нужен безусловно текст. Но ваш аргумент никак не обосновывает почему не должно быть ничего кроме текста.
UNIX'ы написаны на си в нем есть естественный механизм передачи параметров через текст. Если бы сегодня кто-то написал систему на управляемом языке (С# или Java) (Фантом, Singularity), я думаю консоль была бы в этой системе именно объектной. А как иначе, это же естественно следует из архитектуры.
Это вполне можно сделать средствами консоли на Linux. Набрать нужных утилит, гонять данные между ними сохраняя результат во временные папки. Утилитам передавать только пути и параметры. Можно написать bash скрипт который это будет делать.
Но представьте, что формат видео такой же нативный как и текст. Тогда можно просто написать чтото вроде этого
WMP.dlna.streem((«C:/clip1»+«C:/clip2»+«C:/clip3»).addTitle(«lala»).addAudio(«lolo»))
или лучше даже нарисовать граф обработки в какой нибудь визуальной среде. А граф этот можно сохранить и вызывать потом как программу.
>нужен только текст, потому что человек может…
Почему только? Нужен безусловно текст. Но ваш аргумент никак не обосновывает почему не должно быть ничего кроме текста.
UNIX'ы написаны на си в нем есть естественный механизм передачи параметров через текст. Если бы сегодня кто-то написал систему на управляемом языке (С# или Java) (Фантом, Singularity), я думаю консоль была бы в этой системе именно объектной. А как иначе, это же естественно следует из архитектуры.
+1
То что вы написали — интересно. А есть реализации подобного подхода под *nix?
0
Это чисто мои фантазии =) может и есть что.
0
Видел какие-то наработки, которые, например, аудиофайл гонят на stdout распарсенный на текстовый формат типа xml/yaml, соответственно обратные преобразователи, и фильтры различные, и редакторы типа sed. То есть поменять титлы в mp3/ogg или битрейт, или конвертировать из mp3 в ogg можно через обычный пайп типа
Но как-то мне это нежизнеспособно показалось, чисто для wow-эффекта «а ещё в консоли можно так». Хотя вроде собирались переписывать stdin, stdout, stderr и стандартные команды, чтоб они по разному работали с разными mimetypes, передаваемые первым параметром в потоке. В общем, чтобы cat music.mp3 музыку играло, cat video.mp4 кино казало и т. п.
Может в деталях ошибся, но общий принцип такой предлагался уже и, кажется, на хабре обсуждался.
catmp3 music.mp3 | audiofilter --reverb | audioconvert -t ogg >reverb_music.ogg
Но как-то мне это нежизнеспособно показалось, чисто для wow-эффекта «а ещё в консоли можно так». Хотя вроде собирались переписывать stdin, stdout, stderr и стандартные команды, чтоб они по разному работали с разными mimetypes, передаваемые первым параметром в потоке. В общем, чтобы cat music.mp3 музыку играло, cat video.mp4 кино казало и т. п.
Может в деталях ошибся, но общий принцип такой предлагался уже и, кажется, на хабре обсуждался.
0
Простите. но нетбук не очень предназначен для кодирования видео…
0
Только на нем я могу оставить кодирование на ночь, да и киношки смотрю на нем же. Тут такая штука есть — если перекодировать из x264 в mpeg4 с некоторым повышением битрейта то качество теряется не сильно. но при этом работает ускорение mpeg4 и видео идет без глюков. Даже гонится 1080p на 10 мбит битрейта.
0
>> мертворожденные редакторы кода, в которых программы надо мышкой собирать из узлов
Не нравится мышка — собирайте пальцами…
Не нравится мышка — собирайте пальцами…
+1
Зачем нормальной консоли объектные операции? Для этого уже есть питон. Что за странная привычка лепить все в одну кучу
-2
затем, чтобы конвеер команд работал не через парсинг результирующих строк, а единообразно через объекты, так и быстрее и мощнее
+4
Шелл нужен для организации достаточно простой последовательности выполнения программ. Вы много видели программ, которые выдают объекты на stdout? Я не очень. А в таком виде — это очередной язык программирования, а не стандартизированное простое промышленное расширение для автоматизации
-1
Заметьте, что в данном треде не замечено ни одного восторженного или умеренно-радостного комментария, типа «Урраа, вот уж теперь то заживем!»
Что как бы символизирует :-)
Что как бы символизирует :-)
-5
Просто на Windows консоль не особо нужна. Для всего написано уже достаточно инструментов. Это пока для энтузиастов.
+3
«теперь-то заживем!» говорят, когда раньше было плохо, и стало хорошо.
PS изначально годный продукт, поэтому улучшения воспринимаются с меньшим пылом.
зы. ваш баттхёрт в треде заметен невооруженным глазом.
PS изначально годный продукт, поэтому улучшения воспринимаются с меньшим пылом.
зы. ваш баттхёрт в треде заметен невооруженным глазом.
+8
Что угодно можно «гонять» все что инкапсулировано в объект.
0
Для тех кто в танке сообщаем: PowerShell 3 будет официально выпущен вместе с Windows 8
Но работать он будет, надеюсь, не только в Win8 и младших системах??
Но работать он будет, надеюсь, не только в Win8 и младших системах??
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
PowerShell 3 – Finally on the DLR!