Забавы и развелечения в командой строке

Любые разговоры которые хоть как-то связаны с тематикой форума

Модератор: Модераторы разделов

Аватара пользователя
Nazyvaemykh
Сообщения: 438
Статус: Подопытный участник

Забавы и развелечения в командой строке

Сообщение Nazyvaemykh »

Командная строка — не только эффективный инструмент для работы, но и замечатльный объект веселых забав и развлечений.

Какая-то часть моего сердца принадлежит sed'у, и мну вот написал несколько, на мой взгляд, забавных поделок: пару квайнов (отличаются длиной слэш-заборов), скрипт на sed, который генерирует скрипт на awk, который генерирует скрипт на sed, и скрипт, находящий наибольший общий делитель двух чисел.

Выложил это вот здесь.

А чем забавляется unixforum? Весна же все-таки…
¡ Страсть к разрушению есть творческая страсть!
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux

Re: Забавы и развелечения в командой строке

Сообщение eddy »

Nazyvaemykh писал(а):
05.04.2010 23:40
А чем забавляется unixforum?

Велосипедами, например (и в прямом, и в переносном смысле слова) :)
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
Аватара пользователя
tolik-blik
Сообщения: 45
ОС: Mandriva 2009 -> Ubuntu 9.10

Re: Забавы и развелечения в командой строке

Сообщение tolik-blik »

Простите ламо, а как запустить? Сделал файл, запускаю так:
sh ./file
./file

Ничего не выходит!

sh ./qqq
./qqq: 9: /^[0-9]*: not found
./qqq: 9: q: not found
./qqq: 10: /^0: not found
./qqq: 10: p: not found
./qqq: 10: d: not found
./qqq: 10: Syntax error: ";" unexpected


./qqq
./qqq: command not found
Спасибо сказали:
Аватара пользователя
Nazyvaemykh
Сообщения: 438
Статус: Подопытный участник

Re: Забавы и развелечения в командой строке

Сообщение Nazyvaemykh »

Либо сделать файлы исполняемыми (`chmod u+x'), либо запускать командой sed -f.
Квайны они не совсем квайны, так как sed'у просто необходим какой-то ввод, такова ужь его особенность.

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

> echo | sed -f quine2.sed
#!/bin/sed -f
s%^%;H;x;s,;,;s/$/,9;s,q,q/,3;G;s,^,#!/bin/sed -f,;%;s/$/s,;,s%^%;,;s,;,;%;,9;q/
;H;x;s,;,;s/$/,9;s,q,q/,3;G;s,^,#!/bin/sed -f,;s,;,s%^%;,;s,;,;%;,9;q
> echo 40902 24140 | ./gcd.sed
34
¡ Страсть к разрушению есть творческая страсть!
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: Забавы и развелечения в командой строке

Сообщение SLEDopit »

Мой топ 3:
1. Русская рулетка aka патч Бармина ( shell )
2. Тетрис ( sed )
3. Сетевой морской бой ( bash )
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
Спасибо сказали:
Аватара пользователя
Yaros
Сообщения: 501
ОС: Debian Wheezy / Gentoo

Re: Забавы и развелечения в командой строке

Сообщение Yaros »

SLEDopit писал(а):
06.04.2010 01:04
Мой топ 3:
1. Русская рулетка aka патч Бармина ( shell )
2. Тетрис ( sed )
3. Сетевой морской бой ( bash )

Третий вариант заинтересовал)) Можно подробнее?
=========
=Мой блог. =
=========
Gentoo-ниасилятар
Спасибо сказали:
Аватара пользователя
Nazyvaemykh
Сообщения: 438
Статус: Подопытный участник

Re: Забавы и развелечения в командой строке

Сообщение Nazyvaemykh »

Я так понимаю, речь идет об этом: http://habrahabr.ru/blogs/crazydev/80122/
Если говорить о ссылках, то множество в том числе и необычных примеров использования sed можно найти на http://sed.sourceforge.net/
¡ Страсть к разрушению есть творческая страсть!
Спасибо сказали: