LINUX.ORG.RU
ФорумTalks

О превосходстве gnu/linux над офтопиком


0

0

Группа товарищей в теме <<Программа для отслеживания изменений на веб страничках>> (http://www.linux.org.ru/profile/ugoday/view-message.jsp?msgid=1362054) жаловалась на отсутсвие некоторых программ в gnu/linux. В частности говорилось, что "К сожалению, программ этого класса под Linux нет. Вообще." и "Факт остаётся фактом. Ряда программ, весьма востребованных реально на десктопе, под Linux - нет. Как платных, так и бесплатных."

Я подумал: ,,И хрен с вами. Мне нечего ответить ....., не способному осилить info wget и info diff". Тем более, что им в треде уже дали ссылку на нужную программу.

А сегодня с утра у меня было рабочее, творческое настроение. Решил освежить в памяти навыки программирования на scsh (кстати классный шелл для скриптинга). Пол часа времени --- и нужная программа готова. Причём сделал её простой пользователь, нифига не разбирающийся в программировании. А под виндой такое совершенно не возможно. И в этом заключается её основной недостаток.

Слава Линусу!

★★★★★

#!/usr/bin/scsh -s
!#

;; Программа для отслеживания изменений на вэб страницах

(define default-urls-file (list (string-append home-directory "/.compare_site/urls")))

(define (load_urls url_files)
  "Считывает из файла адреса страниц, которые следует проверить"
  (run/strings (cat ,@url_files)))

(define (list-append s a)
  "Принимает список строк и возвращает объединённую строку"
     (if (null? s) a
      (list-append (cdr s) (string-append a (car s)))))

(define (del-slash url)
  "Удаляет дроби из адреса страницы"
  (list-append ((infix-splitter "/") url) ""))

(define (url->fname url)
  "Сопоставляет адресу страницы файл в $HOME/.compare_site"
  (string-append home-directory "/.compare_site/." (del-slash url)))

(define (wget url)
  "Скачивает страницу в $HOME/.compare_site"
  (let ((dest (url->fname url)))
    (run (wget -o "/dev/null" -O ,dest ,url))))

(define (mv source dest)
  "Перемещает файлы туда-сюда"
  (run (mv ,source ,dest) (> 2 "/dev/null")))

(define (olding fname)
  "Старит файл: добавляет к его имени .old"
  (string-append fname ".old"))

(define (compare_url url)
  "Проверяет одну страницу"
  (let* ((fname (url->fname url))
	 (oldfname (olding fname)))
    (mv fname oldfname)
    (wget url)
    (if (= 0 (run (diff ,fname ,oldfname) (> 1 "/dev/null") (> 2 "/dev/null")))
	""
	(run (echo ,url "изменился")))
    (run (rm ,oldfname) (> 2 "/dev/null"))))

(define (display-file-not-exist file)
  "Печатает сообщение если файл не существует"
  (display "с прискорбием сообщаем, что файл ") (display file) (display " не существует :-(") (newline))

(define (main)
  "Разбирает аргументы командной строки"
  (map (lambda (url) (compare_url url))
       (load_urls (if (null? command-line-arguments)
		      default-urls-file
		      command-line-arguments))))

(main)

ugoday ★★★★★
() автор топика

Какой ты, к черту, простой пользователь.

Простой пользователь = это тот, у каторого перенесение кнопочки "Пуск" с право налево и переименование в "Start" приводит к переполнению буфера в левом полушарии мозга.

Простой пользователь (недавно с таким столкнулся) обновляет одно окошко с IE, а результат смотрит в другом (потом обязательно звонит в поддержку и возмущается).

r_asian ★☆☆
()
Ответ на: комментарий от ugoday

Установка:

а) Скопировать файл куда-нибудь.

б) Создать в $HOME директорию .compare_site

в) Создать в $HOME/.compare_site файл urls

Использование

~% ./compare_site.scsh

или

~% ./compare_site.scsh /path/to/file/with/urls /path/to/another/file

ugoday ★★★★★
() автор топика
Ответ на: комментарий от r_asian

>Какой ты, к черту, простой пользователь.

Простой советский пользователь. Вот сейчас в новостях идёт флейм, про высказывание Линуса. Так я вообще не понимаю о чём речь идёт. Какие-то tlb, zero-copy-socket'ы и прочая. Вот что Линус считает это грязным хаком, который работает в оооочень уууузком кругу задач я понял, а что это вообще такое --- не догнал.

>обновляет одно окошко с IE, а результат смотрит в другом

Не, это не простой пользователь, это тупой пользователь.

ugoday ★★★★★
() автор топика

>А под виндой такое совершенно не возможно.

почему же? vim, emacs, sh, scsh, perl и пр. есть ... 
Или ты про вин-юзеров, которые без драйверов не работают :-) ???

sdio ★★★★★
()
Ответ на: комментарий от ugoday

Этот топик наглядный пример чем отличается простой пользователь линукс от простого пользователя виндоус

Payalnic ★★
()
Ответ на: комментарий от Payalnic

> чем отличается простой пользователь линукс от простого пользователя виндоус

Птица говорун отличается умом и сообразительностью (С)

r_asian ★☆☆
()
Ответ на: комментарий от sdio

>и пр. есть ...

apt'а нету, emerge нету. Это раз. Но если даже поставить цигвин и в нём поставить шелл, вгет, дифф и остальные, то это уже не будет виндой. Это будет юникс, запущенный под ядром nt. Это два. И наконец главное --- повседневное использование офтопика приводит к интеллектуальной деградации. Получеловеку просто не придёт в голову, что можно подумать мозгом и переложить часть работы на компюьтер. Культура использования винды ниже, чем у линукса. Так что новички, из которых ещё не выветрилась зараза M$, предпочитают плакаться об отсутсвии чего-либо, вместо того чтобы взять, потратить 30 минут и сделать самому.

>Или ты про вин-юзеров, которые без драйверов не работают :-) ???

Я к тому, что винда превращает людей в вин-юзеров, а под юниксами происходит обратный процесс.

ugoday ★★★★★
() автор топика
Ответ на: комментарий от ugoday

Слава ро^W Лиспу!:)) А кстати в шел скриптинге очень бы не помешал аналог CL'ного format, не знаешь есть такое? Нужно scsh освоить наконец то...

CrazyPit ★★★
()

Кстати по теме, я вроте нужный по функциональности экстеншн для FF видел, кросплатформенный.

CrazyPit ★★★
()
Ответ на: комментарий от CrazyPit

На format это конечно не тянет, но то что нужно делает

((lambda (x) (display "x=") (display x) (newline)) 7)

Готового format'а я не нашёл.

ugoday ★★★★★
() автор топика
Ответ на: комментарий от theserg

>не понял, это что, консольная прога?

Конечно

> GUI, типа GTK2, QT или хоть tcl/tk

А зачем?

ugoday ★★★★★
() автор топика
Ответ на: комментарий от CrazyPit

>экстеншн для FF

Ну, вот _это_ простой пользователь за 30 минут точно не напишет.

ugoday ★★★★★
() автор топика
Ответ на: комментарий от ugoday

Да ладно тебе.. Есть люди почти с любой операционкой на ТЫ.. Не зависит это от операционок, это от образа мышления людей зависит..

MiracleMan ★★★★★
()
Ответ на: комментарий от MiracleMan

> Не зависит это от операционок, это от образа мышления людей зависит..

Бытиё определяет сознание. Будешь использовать виндовс --- будешь думать в терминах мышекликанья. Исключения возможны, но они редки.

ugoday ★★★★★
() автор топика
Ответ на: комментарий от MiracleMan

>Так ведь и использую..

Зря. Бросай ты это дело.

>и многие другие

По сравнению со всеми виндузятниками количество технически грамотных стремится к нулю.

ugoday ★★★★★
() автор топика
Ответ на: комментарий от ugoday

>По сравнению со всеми виндузятниками количество технически грамотных стремится к нулю.

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

anonymous
()
Ответ на: комментарий от ugoday

Да что дров. Нормальных программ больше под офтопик, чем под этот же самый Линукс. И это все позволяет мне говорить, что Линуксу место на гейте максимум. И то я бы там предпочел видеть БЗДи чем поделку под названием iptables

anonymous
()
Ответ на: комментарий от ugoday

А игрушки под Линукс-это нечто. Что только xbill стоит. Ну прям таки шедевр игрописания. ;) И после этого всего ты будешь продолжать утверждать что в Линуксе больше спецов чем в Винде? О дааа. Приятно быть специалистом? ;) Твои программы я писал еще лет 10 назад на засраном паскале или Си или сейчас его заменяет Перл и тд и тп.

anonymous
()
Ответ на: комментарий от ugoday

Видишь ли, лично мне, так оно уже давным-давно и не надо.. ;-)

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

MiracleMan ★★★★★
()
Ответ на: комментарий от r_asian

> Простой пользователь = это тот, у каторого перенесение кнопочки "Пуск" с право налево и переименование в "Start" приводит к переполнению буфера в левом полушарии мозга.

О как! А выполнение кода там в свою пользу возможно при этом? Например, чтобы жертва принесла мне много денег, как-то так заэксплойтить можно? Или просто тупой DoS?

shimon ★★★★★
()
Ответ на: комментарий от anonymous

>То то оно и видно что под Винду дров больше,

Всё моё железо вплоть до сканера и фотоаппарата подцепилось с пол пинка. И на работе тоже никаких проблем не было. А вот под w2k драйвер видюхи (ati rage 128) жутко глючил.

ugoday ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Однако, не соглашусь.. ;-) У меня и в Linux всё хорошо работает и в Windows.. Вот с *BSD есть определённые затруднения на десктопе.. То есть - FreeBSD без проблем,.. А вот с остальными.. Ну, если не нуждаешься в каких-либо мультимедийных извращенияз, навроде перегонки домашнего видео с камеры в DVI с последующей конвертацие в AVI, то тоже жить можно.. ;-) Вы лучше попробуйте OpenSolaris на x86.. ;-) Хотя и там жить можно.. если pkgsrc приспособить..

Кстати, а что вы предпочитаете использовать из мира bsd в качестве альтернативы iptables? iptables, кстати, сейчас уже по многим параметрам даже лучше традиционных решений из мира bsd...

MiracleMan ★★★★★
()
Ответ на: комментарий от anonymous

> Нормальных программ больше под офтопик

Да? Покажи мне нормальный пакетный менеджер под офтопик? А WM типа ion3 есть? А sawfish? Мне тут понадобилось из-под винды достучаться до reiserfs под lvm2, не знаешь как это сделать? Да, кстати, опиши установку grub'а под офтопик.

ugoday ★★★★★
() автор топика
Ответ на: комментарий от anonymous

> Нормальных программ больше под офтопик,

Список "нормальных программ" не приведете? А еще лучше список задач, которые надо решить.

>что Линуксу место на гейте максимум

A мужыки-то не знають (c) В местах, где пришлось работать, что-то отличное от linux и на _рабочих местах_ и на "центральных" машинах - исключение из правила.

anonymous
()
Ответ на: комментарий от shimon

>... как-то так заэксплойтить можно?

Можно, но почему-то все время получаются неуправляемые спам-боты, кричащие повсюду: "Винда рулез, Билли бох, ждем *.msi-eфф!"

З.Ы. Угодай в завязке, не флеймит на тему "*ТеХ vs *Office", так он решил пофлеймить на тему "Линукс vs Виндовс" :-)

sdio ★★★★★
()
Ответ на: комментарий от anonymous

>А игрушки под Линукс-это нечто.

> И после этого всего ты будешь продолжать утверждать что в Линуксе больше спецов чем в Винде?

Офигительный критерий количества спецов, работающих с ОС. Тебе сюда http://www.dyrdom.narod.ru/

ugoday ★★★★★
() автор топика
Ответ на: комментарий от anonymous

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

Приведите список драйверов под Windows, написанных методом reverse engineering.

anonymous
()
Ответ на: комментарий от MiracleMan

Пробовал Солярис. Ее гимор не только запустить, но и установить. Но соляра то не десктоп. БЗДи я тоже не позицировал как десктоп. Если Линукс себя метит на эту роль, то возможно лет через 20 он догонит винду по нынешнему функционалу.

На счет iptables пусть он сперва научится делать что то без патчей, а то знаешь меня уже доставать начинает пожизненное патченье что бы что то заработало. Тот же самый ограничитель скорости. Да можно прикрутить патч, но почему все время все упирается в патчи? Где готовое решение?

anonymous
()
Ответ на: комментарий от shimon

Легко. Помнишь новость недавна пробегала на лоре, что цыганки у студенки мгимо 200 косых выманили? Думаю там именно такой взлом и применялся.

ugoday ★★★★★
() автор топика
Ответ на: комментарий от anonymous

> Tвои программы я писал еще лет 10 назад на засраном паскале или Си или сейчас его заменяет Перл и тд и тп.

Маладэць! Становись в очередь за медалью "Заслуженный паскалист СССР/РФ".

anonymous
()
Ответ на: комментарий от sdio

Угодал. ;) Можно ещё про lisp vs others пофлеймить.

ugoday ★★★★★
() автор топика
Ответ на: комментарий от anonymous

> Ума не хватает дрова написать?

Где список reverse engineered драйверов под Windows? Или сливаешся потихоньку?

Хинт: драйвера под Windows как правило пишут сами производители железа. Cомневаешься в их квалификации? мозгов у них не хватает писать под linux ?

anonymous
()
Ответ на: комментарий от anonymous

>то возможно лет через 20 он догонит винду по нынешнему функционалу.

И какого функционала тебе не хватает? Вирусы не идут? Патчить приходится? Давай конкретику!

ugoday ★★★★★
() автор топика
Ответ на: комментарий от ugoday

>>на тему "Линукс vs Виндовс"

>Кстати давно таких флеймов не было. Непорядок ;)

Они стали слишком скучными, неинформативными и сводятся к поливанию друг друга дерьмом.

sdio ★★★★★
()
Ответ на: комментарий от anonymous

>Хинт: драйвера под Windows как правило пишут сами производители железа. Cомневаешься в их квалификации?

Да нет. В их квалификации не сомневаюсь. Сомневаюсь что линуксоид круче их. ;) Был бы круче-написал бы и так. По книжке только ламеры пишут. ;)

anonymous
()
Ответ на: комментарий от anonymous

> Пробовал Солярис. Ее гимор не только запустить, но и установить.

Упс. Ставил solaris 9 на UltraSPARC IIi, установшик у него не хуже linux'овых и windows'овского. Все заработало сразу, потом доставил gcc, apache, perl и кой-какокой специфический софт, тоже без проблем.

anonymous
()
Ответ на: комментарий от ugoday

>И какого функционала тебе не хватает? Вирусы не идут? Патчить приходится? Давай конкретику!

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

anonymous
()
Ответ на: комментарий от anonymous

>Упс.

Упс. Будь в теме. Разговор шел о х86ом железе. Сперва графику запустить требо, сперва нужно что бы жесткий диск увиделся. Был у меня диск UDMA5 а соляра максимум до UDMA4 искала. Знаешь как абидно было?

anonymous
()
Ответ на: комментарий от sdio

А зачем им нужно открывать спецификацию? У них нет проблем. Их дрова замечательно работают на 90 процентах десктопах. Им не нужен этот 1 процент рынка. Он входит в среднестатистическую погрешность.

anonymous
()
Ответ на: комментарий от anonymous

Да нет, всё нормально с Солярис при условии наличия связки - Solaris+pkgsrc.. ;-) Даже для простого десктопа сойдёт.. Пробовал в качестве десктопа и OpenBSD и NetBSD.. В итоге остановился на FreeBSD.. ;-) Потому что выбор шире был.. Долгое время его и пользовал.. А потом на Linux перешёл.. Тут вообще сказка.. ;-) Но должен отметить, что игрушками не увлекаюсь, жаль на них время тратить.. Реальность куда как интереснее.. ;-)

>На счет iptables пусть он сперва научится делать что то без патчей, а то знаешь меня уже доставать начинает пожизненное патченье что бы что то заработало. Тот же самый ограничитель скорости. Да можно прикрутить патч, но почему все время все упирается в патчи? Где готовое решение?

Да поймите вы - Linux - это ядро.. ;-) И каждый дистростроитель делает обьвязку по-своему.. Глупо требовать от дистра общего назначения функциональности чего угодно из коробки.. без патчей и так далее..(если вы знакомы с Windows, то знаете, что там с этим ещё хуже дела обстоят) ну не существует такой кнопки - "сделать всё и сразу".. Вот досада.. ;-) Вам просто нужен специфический дисриб, позиционирующийся для решения определённых задачь.. Если такового для вас не найдётся, то всегда можно собрать свой собственный, так сказать с пермутровыми пуговицами.. ;-) Благо в этом вам никто не сможет воспретятствовать..

MiracleMan ★★★★★
()
Ответ на: комментарий от anonymous

> Да нет. В их квалификации не сомневаюсь. Сомневаюсь что линуксоид круче их. ;) Был бы круче-написал бы и так. По книжке только ламеры пишут. ;)

соскочить подрываемся? Поздно, батенька, уже заврамшись. :)

драйвера под любую ОС кто пишет? Пользователь или прикладной программист не обязан хакать железки. Написавший драйвер без спецификаций всяко круче писавшего по спецификациям фирмача.

ЗЫ Список написанных тобой без спецификаций драйверов не приведешь? Для подтверждения права бросаться словами типа "по книжке только ламеры пишут".

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.