DSL'09
От: thesz Россия http://thesz.livejournal.com
Дата: 16.09.09 14:11
Оценка:
http://dsl09.blogspot.com/

Сделано в формате блога, поэтому непривычненько.

Есть интересный доклад про конфигурацию раутеров на Хаскеле

А также встретил в одной из презентаций замечательный юниксовый баг.

1.создайте каталог, создайте там файликов и не пустых подкаталогов.
2.попробуйте сделать 'rm *' в этом каталоге. он удалит файлы, а каталоги оставит и при этом ругнётся.
3.создайте в этом же каталоге файлик с именем -rf и снова запустите 'rm *'
4.наслаждайтесь.
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
Re: DSL'09
От: MigMit Россия http://migmit.vox.com
Дата: 16.09.09 17:45
Оценка:
Здравствуйте, thesz, Вы писали:

T>1.создайте каталог, создайте там файликов и не пустых подкаталогов.

T>2.попробуйте сделать 'rm *' в этом каталоге. он удалит файлы, а каталоги оставит и при этом ругнётся.
T>3.создайте в этом же каталоге файлик с именем -rf и снова запустите 'rm *'
T>4.наслаждайтесь.

Ну, создать его тоже не так просто:
MigMit:testdir MigMit$ touch -rf
touch: f: No such file or directory


Но если постараться — ну что ж, на каждый болт на восемнадцать найдётся своя хитрая жопа с лабиринтом:
MigMit:testdir MigMit$ find .
.
./-rf
./testdir1
./testdir1/testfile11
./testdir1/testfile12
./testdir2
./testdir2/testfile21
./testdir2/testfile22
MigMit:testdir MigMit$ rm -- *
rm: testdir1: is a directory
rm: testdir2: is a directory
MigMit:testdir MigMit$ ls
testdir1/ testdir2/
Re: DSL'09
От: MigMit Россия http://migmit.vox.com
Дата: 16.09.09 17:46
Оценка:
Здравствуйте, thesz, Вы писали:

И, кстати, этот баг в полной мере проявляется в TCL.
Re[2]: DSL'09
От: thesz Россия http://thesz.livejournal.com
Дата: 16.09.09 20:21
Оценка:
Здравствуйте, MigMit, Вы писали:

MM>Здравствуйте, thesz, Вы писали:


MM>И, кстати, этот баг в полной мере проявляется в TCL.


Да-да.

switch -- у меня всегда, даже, когда значение не бывает с минусом.
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
Re: DSL'09
От: frogkiller Россия  
Дата: 16.09.09 21:30
Оценка:
Здравствуйте, thesz, Вы писали:

T>А также встретил в одной из презентаций замечательный юниксовый баг.


T>1.создайте каталог, создайте там файликов и не пустых подкаталогов.

T>2.попробуйте сделать 'rm *' в этом каталоге. он удалит файлы, а каталоги оставит и при этом ругнётся.
T>3.создайте в этом же каталоге файлик с именем -rf и снова запустите 'rm *'
T>4.наслаждайтесь.

Имхо, это не баг. Сначала литерально расширяется * до списка имён содержащихся в каталоге, а потом только вызывается rm. Т.е. это эквивалентно 'echo * | xargs rm'
Курица — это инструмент, с помощью которого одно яйцо производит другие.
Re: DSL'09
От: Mr.Cat  
Дата: 17.09.09 18:00
Оценка:
Здравствуйте, thesz, Вы писали:
T>3.создайте в этом же каталоге файлик с именем -rf и снова запустите 'rm *'
Что какбы доказывает крайнюю важность вопросов гигиены в метапрограммировании.
Re[2]: DSL'09
От: thesz Россия http://thesz.livejournal.com
Дата: 18.09.09 06:46
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

MC>Здравствуйте, thesz, Вы писали:

T>>3.создайте в этом же каталоге файлик с именем -rf и снова запустите 'rm *'
MC>Что какбы доказывает крайнюю важность вопросов гигиены в метапрограммировании.

Кстати!

Действительно.
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.