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

26.07.2009

Утренний лытдыбр

Для начала про нововведения тут, прикрутил ссылки добавления постов в закладки, ну а чë у всех есть а мне все лень, хотя сам не пользуюсь но вдруг кому пригодится, да и просто интересно было, прикручивается элементарно, делал вот по этой инструкции, там даже есть генератор шаблона, с кучей импортных социальных и закладочных сервисов, хотя нет это из какой то другой статьи, а ладно вдруг кому пригодится.
Потом в первом приближении добил moinmoin, до юзабельного состояния, более менее разобрался с принципом работы, надо ещë найти сил, и сформулировать основные концепции сайта, и можно будет хотя бы здесь дать ссылочку, и начинать что нибудь туда графоманить :)
Кстати на форуме у Лиссяры подкинули сегодня любопытную загадку
Как удалить файл с именем "------ Name (2004) ------.mp3" ?
%rm "------ Name (2004) ------.mp3"
rm: illegal option -- -
usage: rm [-f | -i] [-dIPRrvW] file ...
unlink file
В принципе ничего особо сложного, подобные примеры попадаются наверное в большинстве нормальных книжек, по принципам работы с шелом, в *nix подобных ОС. И даже как не странно именно подобный случай рассмотрен в man rm, причем довольно подробно и с примерами, ну тут пожалуй играет роль то что природа действия не так уж тривиальна, в итоге решение как и ожидалось просто
> tar cvf "------ Name (2004) ------.mp3" ../pkg_desk
a ../pkg_desk
> ls
------ Name (2004) ------.mp3
> rm "./------ Name (2004) ------.mp3"
> ls
>
Ну вот примерно так, хотя может это решение и не блестяще, если кто подскажет почему его стоит переделать, будет интересно послушать. Кстати в примере есть и способ создавать файлы с любым именем, ибо насколько я понял, tar просто берет переданный в качестве имени набор, и присваивает его имени файла :)
Но как не странно этот случай продемонстрировал ещë раз что полно людей не хотящих думать и читать man, даже после моей подсказки, но пока без готового решения, человек решил еще повыспрашивать, и потом воспользовался весьма абсурдным советом применить для этого perl, нет ну оно конечно тоже может иметь применение, но по моему излишне.
Кстати тут наткнулся на блог Юрия Воинова, очень интересно пишет, и по моему весьма обоснованно. Хотя статьи не маленькие но почитать стоит, и в том числе что бы не подтверждать тезисы из его статьи "Многабукф. Ниасилил!", тенденция такая и правда есть, да что греха таить, я сам иногда ленюсь, но стараюсь исправится, там у него ещë хватает статей и философского характера, и весьма своеобразных взглядов на современные технические решения, да и просто про Solaris и ZFS, а главное их "живое" применение там можно прочесть много интересного, так что весьма рекомендую. побольше бы таких блогов, глядишь и как то стало бы ..., в общем лучше больше :)

8 комментариев:

  1. touch -- "----- Name (2004) ------.mp3"
    rm -- "----- Name (2004) ------.mp3"

    Что я сделал не так? Или эта проблема характерна именно для FreeBSD?

    ОтветитьУдалить
  2. Да ничего.
    Эта "проблема" характерна для шела, а ты просто применил второй способ, в принципе мы там на форуме вроде уже все дообсуждали в том числе и преимущества -- и ./ ;)

    ОтветитьУдалить
  3. shell парсит не опции, а агрументы. shell'у параллельно, что ты потом с **argv внутри своей программы будешь дальше делать. А парсит опции из **argv почти всегда getopt(3) или getopt_long(3).

    The interpretation of options in the argument list may be cancelled by the option ‘‐‐’ (double dash) which causes getopt() to signal the end of argument processing and return -1. When all options have been processed(i.e., up to the first non‐option argument), getopt() returns -1.

    У sh(1) кстати есть встроенная команда для парсинга опций: getopts
    Неужели ты ее никогда не использовал? Вот простенький пример поисковика из консоли с использованием getopts
    http://pastebin.ca/1507717

    ОтветитьУдалить
  4. спасибо что не прикрутил reddit и /.
    Теперь буду знать каких сайтов избегать.

    ОтветитьУдалить
  5. про мптриху - нда уж, никсы не очень много ограничений накладывают на имена файла, напомнило как в контексте линухи обсуждалось про перенос строки в имени файла, а потом долго пытались придумать нафига такое надо-то. Вот и тут: можно - можно, нужно - ээээ... +)

    ОтветитьУдалить
  6. 2 Анонимный
    К сожалению тут больше теоретик, так как скриптов пока пишу крайне мало, и в основном так всякую чепуху, и отчасти поэтому весьма частенько путаю термины, и выходит что написано не совсем даже то что подумалось, но периодически стараюсь исправится :)

    pastebin.ca что то недоступен :( ладно почитаю маны и гугл.

    2 LG.BALUKATION
    Ну смысл тут обычно в том что оно уже появилось, и надо убить, а уж почему это другой вопрос :)

    ОтветитьУдалить
  7. Немного уточню этот пример с нестандартным именем, я привел не как прям уж слишком интересный, а всего лишь как пример того что множество людей не хотят знать как что работает, и стремятся остаться просто потребителями, следующими точным инструкциям.
    Сам иногда эти грешен, но стараюсь исправляться, и видя что явление довольно массовое становится жутко обидно.

    ОтветитьУдалить
  8. я удаляю такие файлы через mc и не парюсь :)

    ОтветитьУдалить

Здесь можно записать свои мысли о посте :)
Если ваш ответ не появился сразу, не паникуйте, тут работает спамоловка, и вероятно вы угодили в неё, так как были анонимом или в вашем посте ссылка, ну или вас не любит google.
Я проснусь и одобрю комент ;)