Командная строка — не только эффективный инструмент для работы, но и замечатльный объект веселых забав и развлечений.
Какая-то часть моего сердца принадлежит sed'у, и мну вот написал несколько, на мой взгляд, забавных поделок: пару квайнов (отличаются длиной слэш-заборов), скрипт на sed, который генерирует скрипт на awk, который генерирует скрипт на sed, и скрипт, находящий наибольший общий делитель двух чисел.
Выложил это вот здесь.
А чем забавляется unixforum? Весна же все-таки…
Забавы и развелечения в командой строке
Модератор: Модераторы разделов
-
Nazyvaemykh
- Сообщения: 438
- Статус: Подопытный участник
Забавы и развелечения в командой строке
¡ Страсть к разрушению есть творческая страсть!
-
eddy
- Сообщения: 3321
- Статус: Красный глаз тролля
- ОС: ArchLinux
Re: Забавы и развелечения в командой строке
Велосипедами, например (и в прямом, и в переносном смысле слова)
RTFM
-------
KOI8-R - патриотичная кодировка
-------
KOI8-R - патриотичная кодировка
-
tolik-blik
- Сообщения: 45
- ОС: Mandriva 2009 -> Ubuntu 9.10
Re: Забавы и развелечения в командой строке
Простите ламо, а как запустить? Сделал файл, запускаю так:
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
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: Забавы и развелечения в командой строке
Либо сделать файлы исполняемыми (`chmod u+x'), либо запускать командой sed -f.
Квайны они не совсем квайны, так как sed'у просто необходим какой-то ввод, такова ужь его особенность.
Квайны они не совсем квайны, так как 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: Забавы и развелечения в командой строке
Мой топ 3:
1. Русская рулетка aka патч Бармина ( shell )
2. Тетрис ( sed )
3. Сетевой морской бой ( bash )
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.
The more you believe you don't do mistakes, the more bugs are in your code.
-
Yaros
- Сообщения: 501
- ОС: Debian Wheezy / Gentoo
Re: Забавы и развелечения в командой строке
Третий вариант заинтересовал)) Можно подробнее?
-
Nazyvaemykh
- Сообщения: 438
- Статус: Подопытный участник
Re: Забавы и развелечения в командой строке
Я так понимаю, речь идет об этом: http://habrahabr.ru/blogs/crazydev/80122/
Если говорить о ссылках, то множество в том числе и необычных примеров использования sed можно найти на http://sed.sourceforge.net/
Если говорить о ссылках, то множество в том числе и необычных примеров использования sed можно найти на http://sed.sourceforge.net/
¡ Страсть к разрушению есть творческая страсть!