Re[2]: 2Sheridan: ну че, баттл? PS vs Bash...
От: Sheridan Россия  
Дата: 27.06.08 08:32
Оценка:
kochetkov.vladimir однажды (27 июня 2008 [Пятница] 12:17) писал в rsdn.flame.comp:

> Шеридан, третий раунд играть будем, или и так — уже каждый свои выводы сделал и все понял? Если будем — закину условия задачи.

Давай-давай. Я за то, чтобы этот топик жил вечно, во первых тренировка, а во вторых остальным полезно.

--
...belive in the matrix...
Posted via RSDN NNTP Server 2.1 beta
Matrix has you...
Re[10]: Раунд 1.
От: Antikrot  
Дата: 27.06.08 08:33
Оценка: +2
Здравствуйте, Sheridan, Вы писали:

S>Лезеш в ядро, ищеш исходник драйвера видеокарточки, открываеш в редакторе и правиш в нужную сторону до того момента, пока не покажется, что все что мог — сделал.

Покажи плиз место в ядре с *твоими* изменениями. Для примера, а то местные горе-программисты просто не знают что делать

S>Потом делаеш diff и отсылаеш в багтрак ядра.

S>Все довольны и тебе говорят спасибо.
Неее, сначала проверят, а уж потом спасибо

А как бы отнесся у юзерам (которых ты админишь), если б каждый себе по-своему ядро переделал? (да так, что у тебя потом какой-нить важный патч не накатится на него)?

И еще, такое подправленное ядро (да и не только ядро) ну нафиг не сгодится, когда напрограммированный на нем софт (раз уж ты на программистов наехал) вдруг будет падать у кастомера а у тебя не будет. Потому что твой традиционный аргумент "у меня работает. что я делаю не так?" сгодится разве что для приказа о твоем увольнении
Re[3]: 2Sheridan: ну че, баттл? PS vs Bash...
От: Antikrot  
Дата: 27.06.08 08:37
Оценка: :)
Здравствуйте, Sheridan, Вы писали:

S>Давай-давай. Я за то, чтобы этот топик жил вечно, во первых тренировка, а во вторых остальным полезно.


учитывая что с башем и т.п. большая часть тутошних зрителей все же знакома, можно подумать что тебе этот топик нужен для раскрутки powershell'a. что в очередной раз доказывает
Re[5]: Раунд 2
От: Antikrot  
Дата: 27.06.08 08:42
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Да? В баше можно дергать любые .so и сборки mono?

Как нефиг делать Пишешь скрипт, который генерит сишную обертку и тут же вызываешь компилятор Сразу скажу что компилятор у меня взялся примерно оттуда же, откуда ты взял моно (который имхо вообще тут чужеродное тело).
Re[11]: Раунд 1.
От: Sheridan Россия  
Дата: 27.06.08 09:14
Оценка:
kochetkov.vladimir однажды (27 июня 2008 [Пятница] 12:14) писал в rsdn.flame.comp:

> А мне что делать? Нет, я серьезно... У меня вот на ноуте PCMCIA EDGE-модем в линуксе глючит, я уже писал об этом. Навыков программирования драйверов под линукс — у меня нет, тема

> — слишком серьезная для меня как для непрограммера, чтобы заняться ее изучением ради настройки модема. Что делать-то?
нанять программиста, если сильно важно.
изучить самому, если важно
ждать если неважно
забить если пофиг

--
...belive in the matrix...
Posted via RSDN NNTP Server 2.1 beta
Matrix has you...
Re[12]: Раунд 1.
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 27.06.08 09:39
Оценка:
Здравствуйте, Sheridan, Вы писали:

В том-то и дело, что:

S>нанять программиста, если сильно важно.


Нанять? Kernel-программера под linux? Разве что только если потом этот драйвер продавать, ибо иначе никак не окупится.

S>изучить самому, если важно

S>ждать если неважно

Зачем, если уже сейчас есть работающие альтернативы?

S>забить если пофиг


Да вот я и забил, оставшись на xp. А если бы не этот досадный факт — я бы на ноуте давно на linux перешел по ряду причин. А пока — приходится SUSE под виртуалкой гонять

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[12]: Раунд 1.
От: Mamut Швеция http://dmitriid.com
Дата: 27.06.08 09:40
Оценка:
>> — слишком серьезная для меня как для непрограммера, чтобы заняться ее изучением ради настройки модема. Что делать-то?
S>нанять программиста, если сильно важно.
S>изучить самому, если важно
S>ждать если неважно
S>забить если пофиг

Если сильно важно, будет установлена винда И к лени это не имеет никакого отношения. Мне платят совсем не за патчинг ядра линукса И системное программирование меня не интересует совсем.
... << RSDN@Home 1.2.0 alpha 4 rev. 1091>>


dmitriid.comGitHubLinkedIn
Re[2]: Мне стало понятно
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 27.06.08 09:41
Оценка:
Здравствуйте, Roman Odaisky, Вы писали:

RO>// кстати, раз мы в КСВ, хотелось бы увидеть аналогичный код на WinAPI


Форк только эмулируется, это особенность вындоуса. Экзек не замещает процесс, а создает новый и это тоже особенность.

Перенаправление есть, только чуток побольше писанины.

RO>Типичная юниксовая система (основанная на SysV init, т. е., почти любая, даже Ubuntu с ее upstart) исполняет при загрузке несколько сотен шелловых скриптов для запуска нужных программ. PowerShell бы для этого не подошла. (Скрипт «#!/bin/sh \n ls 404» выполняется 4 мс; а аналогичное на PowerShell?) Она больше годится для скриптов покрупней, но только зачем нужны крупные скрипты на шелле?..


На вындоусе совсем другой подход к склейке программы из кусочков. Там есть технология COM, которая уже мутировала несколько раз.

Вындоус это система для тупых энд-юзеров вроде меня, а не для людей которые проводят в ОС все время
Re[13]: Раунд 1.
От: Sheridan Россия  
Дата: 27.06.08 09:41
Оценка: -2
kochetkov.vladimir однажды (27 июня 2008 [Пятница] 13:39) писал в rsdn.flame.comp:

> Нанять? Kernel-программера под linux? Разве что только если потом этот драйвер продавать, ибо иначе никак не окупится.

вот и я об чем и говорил ранее. В голове мысли только о бабле.

--
...belive in the matrix...
Posted via RSDN NNTP Server 2.1 beta
Matrix has you...
Re[3]: Мне стало понятно
От: Roman Odaisky Украина  
Дата: 27.06.08 09:42
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>следующий код в PS:


KV>
KV>$folder1 = Get-ChildItem("C:\Temp")
KV>$folder2 = Get-ChildItem("C:\Compaq")
KV>Compare-Object $folder1 $folder2
KV>


KV>набирается (в стандартной PS-консоли) следующим образом:


KV>
KV>$folder1 = Get-C<Tab>("C:\T<Tab>")
KV>$folder2 = Get-C<Tab>("C:\C<Tab>")
KV>Comp<Tab-Tab> $f<Tab> $f<Tab-Tab>
KV>


KV>Путь можно было бы пролистывать "C:<Tab-Tab-Tab...>", вторую команду можно было бы не набирать заново, а нажав стрелку вверх вернуть предыдущую команду и откорректировать ее и т.д. и т.п. В чем тут PS проигрывает zsh?


Просто несколько маленьких примеров:
~ :) kill -<Tab>
signal
-ABRT    -CHLD    -FPE     -INT     -POLL    -QUIT    -STOP    -TRAP    -TTOU    -USR2    -XCPU
-ALRM    -CONT    -HUP     -KILL    -PROF    -SEGV    -SYS     -TSTP    -URG     -VTALRM  -XFSZ
-BUS     -EXIT    -ILL     -PIPE    -PWR     -STKFLT  -TERM    -TTIN    -USR1    -WINCH
option
-l  -- list signal names or numbers of specified signals
-n  -- specify signal number
-s  -- specify signal name
~ :) kill -TERM <Tab>
process ID
 6776 ?        00:00:00 /bin/sh /usr/bin/startkde
 6828 ?        00:00:00  \_ /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/startkde
 6914 ?        00:00:00  \_ kwrapper ksmserver
19864 ?        00:00:00 ssh -fNTM proxy
...пропущено...
 6904 ?        00:00:01 dcopserver [kdeinit] --nosid
 6901 ?        00:00:00 kdeinit Running...
 6907 ?        00:00:00  \_ klauncher [kdeinit] --new-startup
 6932 ?        00:01:56  \_ /usr/bin/artsd -F 10 -S 4096 -s 60 -m artsmessage -c drkonqi -l 3 -f
 6975 ?        00:00:00  \_ /usr/bin/python /usr/bin/kblueplugd
 8527 ?        00:00:00  \_ /usr/lib/eclipse/eclipse -vm /usr/lib/jvm/java-6-sun/bin/java -install /usr/lib/eclipse -startup /usr/lib/ecli
 8533 ?        00:04:48  |   \_ /usr/lib/jvm/java-6-sun/bin/java -Djava.library.path=/usr/lib/jni -Dgnu.gcj.precompiled.db.path=/var/lib/g
 8556 ?        00:00:05  \_ konsole [kdeinit]
 8557 pts/2    00:00:00  |   \_ /bin/zsh
 8562 pts/3    00:00:00  |   \_ /bin/zsh
 8566 pts/4    00:00:00  |   \_ /bin/zsh
 8571 pts/5    00:00:00  |   \_ /bin/zsh
 8576 pts/6    00:00:00  |   \_ /bin/zsh
 8582 pts/7    00:00:00  |   \_ /bin/zsh
 8586 pts/8    00:00:00  |   \_ /bin/zsh
At Top: Hit TAB for more, or the character to insert
 8592 pts/9    00:00:00  |   \_ /bin/zsh
 8597 pts/10   00:00:00  |   \_ /bin/zsh
 8602 pts/11   00:00:00  |   \_ /bin/zsh
 8677 ?        00:00:00  \_ konqueror [kdeinit] --preload
 9010 ?        00:00:29  \_ /usr/bin/assistant-qt4
 9011 ?        00:00:39  \_ /usr/bin/designer-qt4
 9056 ?        00:00:00  \_ /bin/sh /usr/bin/firefox
 9072 ?        00:00:00  |   \_ /bin/sh /usr/lib/firefox/run-mozilla.sh /usr/lib/firefox/firefox-bin
 9076 ?        00:29:35  |       \_ /usr/lib/firefox/firefox-bin
...пропущено...
~ :) kill -TERM fir<Tab>
process ID
 9056 ?        00:00:00  \_ /bin/sh /usr/bin/firefox
 9072 ?        00:00:00  |   \_ /bin/sh /usr/lib/firefox/run-mozilla.sh /usr/lib/firefox/firefox-bin
 9076 ?        00:29:55  |       \_ /usr/lib/firefox/firefox-bin
(можно выбрать стрелочками и Enter, можно просто ввести цифры)
~ :) kill -TERM 9056 9072 fir<Tab>
(это заполнится автоматически, т. к. без вариантов)
~ :) kill -TERM 9056 9072 9076
~ :) man man<Tab>
manual page, section 1
man          manpath
manual page, section 3
manual_user_enter_context
manual page, section 5
manpath
manual page, section 7
man          man-pages
manual page, section 8
mandb
~ :) perl -MHT<Tab>
Perl module
HTML::AsSubs              HTML::HeadParser          HTML::TokeParser          HTTP::Daemon              HTTP::Message
HTML::Element             HTML::LinkExtor           HTML::Tree                HTTP::Date                HTTP::Negotiate
HTML::Element::traverse   HTML::Parse               HTML::TreeBuilder         HTTP::Headers             HTTP::Request
HTML::Entities            HTML::Parser              HTTP::Cookies             HTTP::Headers::Auth       HTTP::Request::Common
HTML::Filter              HTML::PullParser          HTTP::Cookies::Microsoft  HTTP::Headers::ETag       HTTP::Response
HTML::Form                HTML::Tagset              HTTP::Cookies::Netscape   HTTP::Headers::Util       HTTP::Status         
(чего-то не хватает?)
~ :) sudo apti<Tab> i<Tab> libht*-perl<Tab>
~ :) sudo aptitude install libhtml-calendarmonth-perl
libhtml-calendarmonth-perl         libhtml-prototype-perl             libhtml-wikiconverter-perl
libhtml-clean-perl                 libhtml-scrubber-perl              libhttp-body-perl
libhtml-element-extended-perl      libhtml-simpleparse-perl           libhttp-browserdetect-perl
libhtml-fillinform-perl            libhtml-tableextract-perl          libhttp-cache-transparent-perl
libhtml-format-perl                libhtml-table-perl                 libhttp-daemon-ssl-perl
libhtml-fromtext-perl              libhtml-tagcloud-perl              libhttp-dav-perl
libhtml-highlight-perl             libhtml-tagfilter-perl             libhttp-ghttp-perl
libhtml-linkextractor-perl         libhtml-template-expr-perl         libhttp-proxy-perl
libhtml-lint-perl                  libhtml-template-perl              libhttp-recorder-perl
libhtml-mason-perl                 libhtml-tokeparser-simple-perl     libhttp-request-ascgi-perl
libhtml-munger-perl                libhtml-widget-perl                libhttp-request-params-perl
libhtml-pager-perl                 libhtml-widgets-selectlayers-perl  libhttp-server-simple-perl
original
libht*-perl
~ :) cd /v/w/.q<Tab>
~ :) cd /var/www/[курсор].qwertty.com<жмем Tab еще раз>
directory
ip.qwertty.com/        static.qwertty.com/
pogekone.qwertty.com/  svn.qwertty.com/
~ :) cp --n<Tab>
~ :) cp --no-preserve=<Tab>
mode
all         links       ownership   timestamps
~ :) cp --no-preserve=o<Tab>
~ :) cp --no-preserve=ownership,<Tab>
mode
all         links       timestamps
~ :) cp --no-preserve=ownership,<Пробел>
~ :) cp --no-preserve=ownership (запятая исчезла, можно вводить дальше)
~ :) ip<Tab>
external command
ip                          ipmaddr
ip6tables                   iptables
ip6tables-restore           iptables-restore
ip6tables-save              iptables-save
ipcrm                       iptunnel
ipcs                        ipw3945d-2.6.22-14-generic
~ :) ip <Tab>
ip command
addr  -- manage protocol address
link  -- configure network device
maddr   -- manage multicast addresses
monitor  -- monitor state
mroute  -- manage multicast routing cache
neigh  -- manage neighbour/ARP tables
route  -- manage routing table
rule   -- manage routing policy database
tunnel  -- configure tunnel
~ :) ip a<Tab><Tab>
addr command
add      -- add new protocol address
change   -- change existing protocol address
delete    -- delete protocol address
flush     -- flush protocol address
help     -- show help for command
replace  -- add or update protocol address
show      -- show protocol address
~ :) ip addr add <Tab>
addr add/change/replace commands
broadcast  -- specify broadcast IP address
dev        -- specify device
label      -- specify tag for device
local      -- specify local IP address
peer       -- specify peer IP address (point-to-point)
scope      -- specify scope for address
~ :) ip addr add dev <Tab>
network interface
eth0  lo

И так далее. Из мелочей: если ты находишься в /var/www/dev.mysite.com, то cd dev www отправит тебя в /var/www/www.mysite.com. cd ../<Tab> покажет все директории, кроме той, в которой ты и так находишься. Есть исправлялка ошибок, но я ей не пользуюсь.

Короче, zsh дополняет всё по Tab. Т. е., совсем всё, включая ключи популярных программ.


RO>>если мало программ имеют вывод, годный для переадресации в другие программы?

KV>Хм...
KV>$ipstring = ipconfig.exe | select-string "IP-" | select-object; $ipstring.ToString().Split(":")[1].Trim() | echo
KV>- выведет IP первого интерфейса, полученный из стандартной ipconig.

KV>И? :xz:


Всё равно мало.

RO>>Вывод: PowerShell — это видоизменение C# путем смены синтаксиса, добавления интерпретатора и интерактивного режима, цель чего избегает моего понимания.


KV>"это видоизменение C# путем смены синтаксиса" — это сильно. Синтаксис паскаля тоже можно доработать напильником, чтобы perl получился :))) Цель создания PS — дать возможно полноценно управлять ОС из командной строки, как в интерактивном режиме, так и из сценариев.


Я к тому, что от шеллоподобного синтаксиса толку ноль. Как интерактивная оболочка она не очень-то и удобна, а Шеридан давно уже сказал, что если для обычной работы используется одно, а для сценариев — другое, жди багов. И он ведь прав.

P. S. Идея PS — обмен бинарными объектами вместо текста — хорошая, хоть и не новая. Реализация — не очень.

P. P. S. Хорошо бы приделать S-выражения к юниксовым утилитам. Тем более, что дело-то нехитрое, и интерактивности ничуть не вредит:
~ :) ls /
bin   cdrom  etc   initrd      lib         media  opt   root  srv  tmp  var
boot  dev    home  initrd.img  lost+found  mnt    proc  sbin  sys  usr  vmlinuz
~ :) ls --hypothetical-sexp /
(bin   cdrom  etc   initrd        lib         media  opt   root  srv  tmp  var
 boot  dev    home "initrd.img"  "lost+found" mnt    proc  sbin  sys  usr  vmlinuz)
До последнего не верил в пирамиду Лебедева.
Re[14]: Раунд 1.
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 27.06.08 09:50
Оценка: +3
Здравствуйте, Sheridan, Вы писали:

S>kochetkov.vladimir однажды (27 июня 2008 [Пятница] 13:39) писал в rsdn.flame.comp:


>> Нанять? Kernel-программера под linux? Разве что только если потом этот драйвер продавать, ибо иначе никак не окупится.

S>вот и я об чем и говорил ранее. В голове мысли только о бабле.

Шеридан, ты это... На досуге поинтересуйся — во сколько обойдется заказная разработка драйвера под закрытое устройство, прежде чем советовать такое, а потом рассуждать об алчности собеседника, ага?

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[14]: Раунд 1.
От: Mamut Швеция http://dmitriid.com
Дата: 27.06.08 10:01
Оценка:
Здравствуйте, Sheridan, Вы писали:

S>kochetkov.vladimir однажды (27 июня 2008 [Пятница] 13:39) писал в rsdn.flame.comp:


>> Нанять? Kernel-программера под linux? Разве что только если потом этот драйвер продавать, ибо иначе никак не окупится.

S>вот и я об чем и говорил ранее. В голове мысли только о бабле.

Потому что:
— мы живем в реальном мире, а кушать хочется (hint: основные разработчики под линукс работают на совсем нехилых зарплатах, нахаляву горбатиться никто не хочет)

— мы живем в реальном мире, в котором жизнь ой как коротка, и тратить время на вещи, тебе абсолюно неинтересные или требуемые тебе максимум раз в жизни с неясной отдачей, совсем не хочется. Хочтся пить пиво, рожать детей, смотреть футбольные матчи и т.п. (а на это все, кстати, тоже нужны деньги )

— мы живем в реальном мире, в котором нам платят за то, на что нас нанимали. Если меня наняли разрабаывать веб-приложение на Coldfusion, мне никто и никогда не заплатит за патчинг ядра линукса. Из чего следует подпункт:

-- если мне не платят на работе за патчинг линукса, я должен буду этим заниматься в свободной время. Я, знаешь, лучше про типы рекурсии
Автор: Mamut
Дата: 23.06.08
почитаю. От этого мне, как программисту, будет намного больше пользы, чем ковыряние в кишках системы. Или пойду, жирок в бассейне сгоню (а на бассейн опять же нужны деньги ).
... << RSDN@Home 1.2.0 alpha 4 rev. 1091>>


dmitriid.comGitHubLinkedIn
Re[3]: Мне стало понятно
От: Roman Odaisky Украина  
Дата: 27.06.08 10:01
Оценка: 2 (1)
Здравствуйте, Ikemefula, Вы писали:

RO>>// кстати, раз мы в КСВ, хотелось бы увидеть аналогичный код на WinAPI


I>Форк только эмулируется, это особенность вындоуса. Экзек не замещает процесс, а создает новый и это тоже особенность.

I>Перенаправление есть, только чуток побольше писанины.

Я знаю, как работает CreateProcess. Там где-то есть три хендла для перенаправления stdin, stdout, stderr. Просто было бы интересно взглянуть на готовый код.

fork/exec вообще позволяют делать много интересных вещей. Передавать большее количество дескрипторов, например (if(fork() == 0) { int fd = getSomeFile(); exec("myprogram", "--file", "/dev/fd/" + fd); }).

Никого не смущает, что CreateProcess имеет в общей сложности 35 параметров, в то время как fork — 0, а exec — 3 (имя, аргументы, окружение)? К примеру, там есть особый параметр для задания текущей директории, в то время как Unix way — попросту fork, chdir, exec.

Ну да ладно, это из другого флейма :-)

RO>>Типичная юниксовая система (основанная на SysV init, т. е., почти любая, даже Ubuntu с ее upstart) исполняет при загрузке несколько сотен шелловых скриптов для запуска нужных программ. PowerShell бы для этого не подошла. (Скрипт «#!/bin/sh \n ls 404» выполняется 4 мс; а аналогичное на PowerShell?) Она больше годится для скриптов покрупней, но только зачем нужны крупные скрипты на шелле?..


I>На вындоусе совсем другой подход к склейке программы из кусочков. Там есть технология COM, которая уже мутировала несколько раз.


Угу.

I>Вындоус это система для тупых энд-юзеров вроде меня, а не для людей которые проводят в ОС все время


Энд-юзеру и в линуксе не обязательно рыться где-нибудь в глубинах. Могут возникнуть проблемы с аппаратным обеспечением, для решения понадобится один визит знакомого бородатого админа. А дальше всё и для простого юзера вполне прилично работает.
До последнего не верил в пирамиду Лебедева.
Re[2]: 2Sheridan: ну че, баттл? PS vs Bash...
От: Roman Odaisky Украина  
Дата: 27.06.08 10:06
Оценка: +1 :)))
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Шеридан, третий раунд играть будем, или и так — уже каждый свои выводы сделал и все понял? Если будем — закину условия задачи.


Лучше распей с Шериданом обещанный баттл, он тебе напишет драйвера для твоего модема, ты поставишь себе линукс, будешь здесь хвалить *sh и ругать PowerShell в частности и Майкрософт вообще, все будут счастливы, твоя компания станет сверхзащищена от всех вирусов и хакеров, на RSDN поменяются default city и default OS. Чего же ты хотел, виндекапец всё-таки.
До последнего не верил в пирамиду Лебедева.
Re[4]: Мне стало понятно
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 27.06.08 10:16
Оценка:
Здравствуйте, Roman Odaisky, Вы писали:

RO>Просто несколько маленьких примеров:


RO>cd ../<Tab> покажет все директории, кроме той, в которой ты и так находишься.


В стандартной PS-консоли cd ../<Tab> работает также, кроме пропуска текущего каталога.

RO>Короче, zsh дополняет всё по Tab. Т. е., совсем всё, включая ключи популярных программ.


PS — дополняет по Tab все, что относится к его инфраструктуре (командлеты, алиасы, команды, сценарии, ключи для всех них, помощь и т .п.).

RO>>>если мало программ имеют вывод, годный для переадресации в другие программы?

KV>>Хм...
KV>>$ipstring = ipconfig.exe | select-string "IP-" | select-object; $ipstring.ToString().Split(":")[1].Trim() | echo
KV>>- выведет IP первого интерфейса, полученный из стандартной ipconig.

KV>>И?


RO>Всё равно мало.


Зачем больше, если для этого есть более удобные средства?

RO>Я к тому, что от шеллоподобного синтаксиса толку ноль. Как интерактивная оболочка она не очень-то и удобна,


Ром, лично ты — администрировал windows-сеть из этой оболочки? Просто интересно, читал ты "Пастернака" или нет...

RO>а Шеридан давно уже сказал, что если для обычной работы используется одно, а для сценариев — другое, жди багов. И он ведь прав.


А, ну раз Шеридан сказал... Я не знаю, что там использует Шеридан. Но и в интерактивном режиме и в режиме сценариев — работа с PS достаточно комфортна. Комфортнее всех, имевшихся ранее аналогов под виндой. Если же хочется чтобы было еще комфортнее — есть куча сторонних хостов для PS, в т.ч. и бесплатных, в т.ч. и открытых. Начиная с плагинов для фара и альтернатив виндовой консоли, и заканчивая полноценными IDE (с возможностью как интерактивной работы, так и написания и полноценной отладки сценариев) — powershell plus, например. Там вообще тотальный intellisense, подсвечивание синтаксиса и ошибок, установка точек прерывания, пошаговое выполнение, watch'и и т.п.

RO>P. S. Идея PS — обмен бинарными объектами вместо текста — хорошая, хоть и не новая. Реализация — не очень.


Что конкретно не так в реализации?

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[5]: Мне стало понятно
От: Antikrot  
Дата: 27.06.08 10:19
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Что конкретно не так в реализации?

Несвободная (т.е. не опенсорс и т.д.)
Re[3]: 2Sheridan: ну че, баттл? PS vs Bash...
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 27.06.08 10:29
Оценка:
Здравствуйте, Roman Odaisky, Вы писали:

RO>Здравствуйте, kochetkov.vladimir, Вы писали:


KV>>Шеридан, третий раунд играть будем, или и так — уже каждый свои выводы сделал и все понял? Если будем — закину условия задачи.


RO>Лучше распей с Шериданом обещанный баттл, он тебе напишет драйвера для твоего модема, ты поставишь себе линукс, будешь здесь хвалить *sh и ругать PowerShell в частности и Майкрософт вообще, все будут счастливы, твоя компания станет сверхзащищена от всех вирусов и хакеров, на RSDN поменяются default city и default OS. Чего же ты хотел, виндекапец всё-таки.


...default-city будет переименован в "Нью-Васюки"...

Роман, ты невнимательно читаешь. Линукс у меня давно стоит, и я его достаточно активно использую (в качестве рядового пользователя по отношению к администрированию и программингу, если что). Ну, на работе, по крайней мере. Как в виртуалке, так и на одной из стационарных рабочих машин.

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[5]: Мне стало понятно
От: Roman Odaisky Украина  
Дата: 27.06.08 10:31
Оценка: 3 (1)
Здравствуйте, kochetkov.vladimir, Вы писали:

RO>>Просто несколько маленьких примеров:

RO>>cd ../<Tab> покажет все директории, кроме той, в которой ты и так находишься.
KV>В стандартной PS-консоли cd ../<Tab> работает также, кроме пропуска текущего каталога.

Она умеет что-то вроде Whatever-Editor C:\w\s\d\e\hosts<Tab>?

RO>>Короче, zsh дополняет всё по Tab. Т. е., совсем всё, включая ключи популярных программ.

KV>PS — дополняет по Tab все, что относится к его инфраструктуре (командлеты, алиасы, команды, сценарии, ключи для всех них, помощь и т .п.).

Как именно? Что отображается при Get-<Tab>?

RO>>>>если мало программ имеют вывод, годный для переадресации в другие программы?

KV>>>Хм...
KV>>>И? :xz:
RO>>Всё равно мало.
KV>Зачем больше, если для этого есть более удобные средства?

Вопрос в том, зачем же тогда оптимизировать синтаксис для этой работы?

RO>>Я к тому, что от шеллоподобного синтаксиса толку ноль. Как интерактивная оболочка она не очень-то и удобна,


KV>Ром, лично ты — администрировал windows-сеть из этой оболочки? Просто интересно, читал ты "Пастернака" или нет...


Я и из других оболочек windows-сети не администрировал :-)

RO>>а Шеридан давно уже сказал, что если для обычной работы используется одно, а для сценариев — другое, жди багов. И он ведь прав.


KV>Комфортнее всех, имевшихся ранее аналогов под виндой.


Попробуй в своей SuSE wget 'http://qwertty.com/sync/roma/.zshrc' && sudo apt-get install zsh. И просто нажимай Tab почаще.
До последнего не верил в пирамиду Лебедева.
Re[15]: Раунд 1.
От: Sheridan Россия  
Дата: 27.06.08 10:57
Оценка:
kochetkov.vladimir однажды (27 июня 2008 [Пятница] 13:50) писал в rsdn.flame.comp:

> Шеридан, ты это... На досуге поинтересуйся — во сколько обойдется заказная разработка драйвера под закрытое устройство, прежде чем советовать такое, а потом рассуждать об

> алчности собеседника, ага?
Я понимаю, что всему своя цена, но и для каждого потолок свой. Я смогу за безделушку выкинуть ну рублей 300 максимум. А ктото и 3000$ за деньги не считает.
И верхняя планка это уже восемнадцатый вопрос. Не можеш столько денег выложить — разбирайся сам. Логика простая


--
...belive in the matrix...
Posted via RSDN NNTP Server 2.1 beta
Matrix has you...
Re[15]: Раунд 1.
От: Sheridan Россия  
Дата: 27.06.08 10:58
Оценка:
Mamut однажды (27 июня 2008 [Пятница] 14:01) писал в rsdn.flame.comp:

Ясно, для тебя программирование — станок.
Ты на этом станке деньги зарабатываеш, но этот станок тебе ни капли не интересен.

--
...belive in the matrix...
Posted via RSDN NNTP Server 2.1 beta
Matrix has you...
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.