- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
int file_exist (char *filename)
{
char s[200];
sprintf(s, "test -e %s", filename);
if (system(s) == 0){
return 1;
}else{
return 0;
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+136
int file_exist (char *filename)
{
char s[200];
sprintf(s, "test -e %s", filename);
if (system(s) == 0){
return 1;
}else{
return 0;
}
}
http://stackoverflow.com/questions/3828192/checking-if-a-directory-exists-in-unix-system-call
> GetFileAttributes
stat
> FindFirstFile
opendir + readdir
О господи, во что я опять вляпался.
Выложить на гитхаб и добавить лицензию что ли?
упс... посоны, как восстановить линух?
Или порадоваться в плане того, что ты тратишь свое время на общение с нами, а не с игрой? Тогда однозначно, порадуемся.
Порадуемся товарищи: Лурик с нами!
Кстати, что обладает меньшим отпугивающим эффектом: ``, system или eval?
Собственно вызов функции stat утилита test и делает, потому что findfirst здесь будет избыточным (поиск по директории в определённых условиях может и не работать).
Пингвины прыгают по клаве: пиг-пиг-пиг! У пингвинов нет денег на винду, вот и прыгают, пиг-пиг-пиг! Толстые, наглые пингвины!
есть 3 известных мне способа проверить, существует ли файл:
* FindFirstFile
* GetFileAttributes
*CreateFile с параметром OpenExisting
* findfirst либо opendir+readdir
* stat
* open либо fopen с соответствующими параметрами
> Недружелюбный интерфейс
Поясните свою мысль
> трудность настройки
Поясните свою мысль
> ужасно неочевидные способы установки приложений
Поясните свою мысль
> Винда, установленная на диск, в среднем весит куда меньше, чем дистрибьютив Линукса - но функциональность его куда меньше, чем у винды.
И к этому тоже нужна пояснительная записка с расчётами.
Недружелюбный интерфейс - нет привычных элементов управления, чтобы быстро настроить систему под свои прихоти.
Трудность настройки - как ее вообще настраивать?? Где программы хранят параметры?
В большинстве известных мне систем проги ставятся кликом по значку пакета (далее следуя указаниям)
> Где программы хранят параметры?
Читаем документацию по программе. Чаще всего это /etc/имя_программы или /usr/share/имя_программы или ~/.имя_программы. А в Винде настройки могут быть где угодно: на 9000-м уровне реестра, в папке приложения, в куче папок Application Data...
> В большинстве известных мне систем проги ставятся кликом по значку пакета
Разве это ужасно неочевидный способ?
Так вот, установочные пакеты весят очень много, их сложно устанавливать. При клике по значку пакета ничего не происходит. В винде и в других системах можно разобраться руководствуясь лишь здравым смыслом - в линуксе такое ориентирование абсолютно невозможно.
Было, когда адобовские штучки не хотели удаляться и обновляться, пока я не нашёл крутой анинсталлятор.
В Линуксе в любой непонятной ситуации я могу найти мануал и максимум за 10 минут исправить. В Винде же неисправности подстерегают в самых неожиданных местах, а официальная документация не помогает.
Ага, при тыке в инсталлятор выдается разумное и понятное сообщение "Эта программа настроена неправильно", и начинается занимательный и интересный процесс установки всех подряд vcredist'ов и framework'ов :)
То, что проге нужно сначала запуститься, чтобы проверить. А как она запустится, если нет нужных библиотек? Ой, бля...
А что сейчас выдает эту ошибку? Вот это нечто вполне могло бы выдать более вменяемый текст, с версией, которая требуется. Она же ее один хер проверила.
Тем более эта сука знает, какая именно версия фреймворка\vcredist ей нужна. Но молчит как партизан.
Вот блядь, плюсану еще раз. Там же наверняка в заголовках прописано. Но-нет. Причем инфу приходится доставать аж их системного журнала.
Берут пример с линукса, чо ;)
>>требуется vcredist
"программе не удалось запуститься потому, что компонент mscoree.dll" не был найден"
>>нужен framework.
К тому же фреймворкные подделки часто имеют дефолтную иконку и малый размер - можно как бы догадаться.
>>требуется vcredist
"программе не удалось запуститься потому, что компонент mscoree.dll" не был найден"
>>нужен framework.
--
Очень логичные спермозаключения. Хоть бы уже написал "загуглить", не так слился бы.
Опытные спермобляди могут даже по размеру догадаться, какой фрейвёрк и какую версию нужно проге.
Истинно, батюшка! Чтобы в винде разобраться, достаточно потыкать кнопочки и осознать некоторые компьютерные закономерности. Чтобы разобраться в линуксе, нужно неистово раскуривать маны на тысячи страниц.
Винда, что серверная, что обычная интуитивно понятна, глубоко копать надо только в крайних случаях.
Здесь можно провести аналогию с хромом: по умолчанию - пара кнопок, которые хорошо работают. Всем понятно, как открыть любимую сраную социальную сеть, для этого не надо быть обер-оператором браузерных систем. Оно по умолчанию работает, курить маны надо только, если требуется нестандартный функционал.
P.S. Если у кто-то знает, как управиться с линуксом интуитивно понятными методами без курения тонн манов, сообщите, как добиться этого. Может быть я многое в своей жизни потерял.
нет, это в линухе все еще топят дровами - небось не щупали win8\8.1?
Это в динухе все просто и понятно, это в линхе нет плоского интерфейса, это в линузе, на кде, можно развернуть окно на 1\4 экрана. ну и так далее.
А что с ней? Всё интуитивно понятно, если нет, 30минут-пары часов потыкивания гуёв мышью и кнопками достаточно для приобретения уверенности и осознания комфорта.
В 8.1 всё стало только лучше: на начальном экране можно провести пальцем вверх - и вместо плиток появится аналог "все программы". Этого, поверьте, в 8 не хватало.
Но тех, кто перешёл с вин7 на вин8 на компе без сенсорного экрана я не понимаю. Они больны.
P.S. А вот настройки беспроводных сетей куда-то похерили. Хрен знает теперь, как ввести пароль на беспроводную есть, если она не вещает.
Не знаю, почему, но у меня винда работает и не доставляет проблем. У линуксоидов всё тоже работает, но они по-видимому, тоже не могут объяснить, почему они ничего не трогают, а оно просто работает.
Вот если бы кто-то научил меня ничего в линуксе не трогать, чтоб всё работало...
ему 60 лет
я ему 2 года назад установил xubuntu на старый ноут
он этим ноутом пользуется ежедневно, обновляется все как положено
на моей памяти из самого критического что было - 1) засрали весь хард так, что осталось 0 байт - я им помогал по телефону, 2) пару месяцев назад старый хард начал ругаться о своей близкой кончине, отец сходил на базар, нашёл замену, поменял хард, по телефону я им помог установить новый линух с флешки
так что не надо рассказывать насколько линукс недружелюбен
браузер работает, опенофис документы набирает и без бубна сразу печатает на старом принтере (в отличие от винды, где пришлось поебаться), торренты качаются, фильмы смотрятся, скайп работает, приложения ставятся централизованно, угрозы вирусов нет в принципе - что ещё пенсионеру надо?
Если это можно назвать работой. На последних бубунтах он крэшится каждые полчаса. Но тут, боюсь, виноват не столько Линупс.
кстати, у жены на работе тоже убунта стоит, несколько лет
безусловно, хватает недочетов
но то, что это работоспособная система для рабочего использования, а не только в браузер поглядеть - неоспоримо
кстати, скайп у нее работает, отвалов её в офлайн не наблюдаю, жалоб нет, язык розовый
На каждом шагу обнаруживается, что ни черта не знаю и не могу.
Да забей на эти религии :) Просто самосборные проги ставь в какую-нибудь папку в хомяке. Примерно как бы ты это делал с portable прогой в винде. Надоест прога - удалишь вместе с папкой ;)
> нельзя просто так взять и запустить файл
Да почему, бинарные файлы, упакованные в архивчик, и скачанные у друзей и т.п. вполне запускаются. Ну кроме случаев, когда версии либ уж слишком разные (но с этим и в винде нынче жопа). Просто не принято выкладывать проги в таком виде, в основном по соображениям безопасности и религии. А качать и юзать никто не мешает.
Вроде Nix (http://nixos.org/nix/) умеет, только где он.
Ну у бинарных дистров там понятно, пути говнохардкодят и все такое. Но вот почему так не умеет делать даже гента, в которой один хер все собирается из исходников, для меня остается загадкой.
для либ есть patchelf, а путь к ресурсам часто указывают в ./configure, который и железно забиваются в бинарь.
А для генты, ЕМНИП, можно указать EROOT
Что в этом смысле интересно, и чему в Винде вообще никакого аналога нет: yum-builddep например (в убунте есть что-то похожее в apt семье): это утилита, которая скачивает заголовки / необходимые для билда внешние зависимости. Еще есть alternatives, с которыми можно быстро переключится между разными установленными программами одного типа. Т.е. если я захочу зачем-то подменить на время стандартный томкат его самособранным двойником, то это труда совсем не составит (не нужно будет менять сотню переменных окружения и файлов конфигурации).
надо лишь упорнее работать... через дня два-три хорошей работы мозги встанут на место, как работать
Спасибо, надо будет проверить. Пока не оставался наедине с системой столь долгое время.
За исключением администрации, все вышеперечисленное тривиально сделать в Линуксе. Но типичному пользователю бывает нужно выполнить административные задачи, например, настроить ssh подключение, написать cron скрипт. Часто нужно дополнительно настроить программы, с которыми типичный пользователь Виндовса не сталкивается, типа сиквел сервера.
Т.е. типичный пользователь Линукса - немножко сисадмин, но это не потому, что система такая, а потому, что система используется для таких задач. Я устанавиливал Линукс людям без какой-либо специальной подготовки, у которых всех требований к системе было: писать бумаги для института, смотреть видео и интернет. За два года мне ни разу не позвонили, не просили что-то починить, или выполнить какую-то административную задачу. Если человеку это не нужно, то он может обойтись и таким же минимальным набором знаний, что и типичный пользователь Виндовса.
Но если речь идет об администрирование, то Виндовс совсем не айс. Чего стоят только переменные окружения и системный журнал событий. А как на счет установки двух версий программы и быстрого переключения между ними?
Это утешает. Я обычно ничего чисто виндового не делаю, особых причин для вечной верности M$ нет, так же, как и особых причин для смены ОСи. Но... всё не то и всё не так. Словно смена парадигмы программирования.
Везёт тем людям, кому достаточно ярлычка своей программы на рабочем столе и её запуска по клику.
Что такое ярлычки на рабочем столе?
http://rghost.ru/51176177.view
Хотя, те кнопки слева тоже сойдут.
Раз уж тут картинками хвастаются. Обычный рабочий стол в линуксе выглядит как-то так, ну или вообще без картинки. Это при условии, что рабочий стол вообще есть.
Самое модное сегодня: http://awesome.naquadah.org/ - вообще без десктоп менеджера, просто минимальный виндоу-менеджер, идеально подходит для ВМ / удаленной работы, если хочется ГУЙ, хорошо для лаптей, где нужно мучаться с тачпадом.
А вообще, тут есть куча скринов из всяких менеджеров:
http://en.wikipedia.org/wiki/Desktop_environment
В свою папку срут или переносимые программы, или допотопное говно (а особо допотопное даже в windir или вообще в корень). Нормальные проги пишут в %appdata%
Найти все настройки этого замечательного сервера - это особое исскуство, которому год учать Виндовс сисадминов. Обычно они раскиданы по-немножку везде, в папке проекта, в директориях, откуда сервер читает файлы, в регистре, ну и рядом с бинарниками сервера. Есть еще неуловимая группа настоек, которые можно задать только через графическую панель управления. Как правило, это самые важные настройки, которые нужно менять чаще всего.
Характерная особенность всего софта от МС, что есть то есть. Но не такой блатной софт обычно ведет себя нормально.
Там еще были лулзы с наследованием конфигов... Мои попытки разместить на одном домене второй и четвертый фреймворки (так было надо, код был не наш) напоминали скрещивание ежа с ужом ;) Я уже точно забыл, в чем заключалась проблема. Но вроде бы на четвертом фреймворке унесли часть настроек в глобальный конфиг (во втором, емнип, все делалось копипастой), и они начали пересекаться с настройками в корневом webconfig'а (а это фатальная ошибка).
? Ставил на комп, все ок.
Да причем тут на комп... Фреймворки то друг другу сами по себе не мешают. А там на одном домене в IIS висели два пула с ASP.NET. Один со вторым фреймворком, второй с четвертым. Короче надеюсь тебе никогда не придется с этим встречаться ;) Забыл эту срань под названием ASP.NET как страшный сон, после того как серваки телепортировали от нас.
Ну смотря какого. Но да, установка из репозитория это пиздец неочевидный способ. Это ж надо додуматься нажать на "Центр приложений", вбить туда название проги и ее назначение, и как-то догадаться нажать кнопку "Установить"... Я б в жизни не догадался, если бы не скурил 100 страниц манов...
> Недружелюбный интерфейс
Тут согласен, есть проблемы у линуховых оконных менеджеров.
> трудность настройки
Если сервак мутишь - да. Но серваки и на винде не сахар. А десктопная версия бубунты ставится как винда, по принципу next-next-next (правда там по дефолту стоит галочка "вынести все разделы к хуям и форматнуть в ext4", которая доставляет море лулзов невнимательным нубам).
> дистрибьютив Линукса
600Мб для дистриба и гигов 5 после установки это много? А сколько там у нас весит установленная семерочка? Гигов 10?) А дистриб семерочки? Ой, дивидюшка.
> Висты
Фубля.
Зачем?
Защита от долбоёбов, удаляющих "лишние файлики" (ntldr, ntdetect) в корне.
Между тем 50/50 слетит система.
Все правильно он говорит, дорогой товарищ!
Системные файлы винда либо не даст удалить, либо восстановит из dllcache, а эти файлы удалить легко и система их не восстановит.
Просто на XP столько случаев видел, когда люди выносили ntdetect и прочий мусор из корня диска (при этом они понимали, что windows и program files выносить нежелательно, т.к. система, да и винда предупреждает при входе туды)...
Ну у семерки загрузочных файлов гораздо больше, чем у XP. Там папка целая с переводами и т.п.
Кстати, появилась тенденция ставить на буки 8 с Secure Boot и GPT. Приходиться совершать лишние телодвижения, что 7 поставить.
Правда, не всегда такое бывает.
GPT не трожь, это няша!
> Secure Boot
Блин, я вот думал, что Secure Boot на обычных компах это что-то надежное... Прописал туда свой сертификат, хотел поюзать его для защиты от всяких левых загрузочных флешек, которые могут засунуть в мой комп... А как оказалось, он сбрасывается обычным передергиванием батарейки ;(
Прокатит ли на дюал-биосах?
Поясните мысль.
Все верно. Плюсанул. В бубунте этот принцип вообще возвели до апофеоза. Кнопочка "Drop to root prompt" в недрах загрузочной менюхи.
Если есть линуксовая загрузочная менюха (grub, lilo), и она дает возможность передать ядру опции, то даешь опцию init=/bin/bash. После старта ядра тебя кидает сразу в рутовую консольку. Делаешь там mount / -o remount,rw, чтобы можно было писать на диск. Ну и дальше по обстоятельствам - заводи юзеров, добавляй себе sudo и т.п. :) Вот как-то так это делается.
Это баян планетарного размера.
Замуровали, демоны!..
© Иоанн Грозный
Проще забекапить реестр и сбросить было. Благо тулза есть (забыл название).
Во всех осях уже есть как бы не 10 лет ;) Да и удобно же. Не надо думать о всяких там primary/logical разделах и ограничениях на их размер. Давным давно поставил, не жалею.
Какие есть обоснованные причины не юзать GPT?
•Windows Server 2012
•Windows 7
•Windows Server 2008
•Windows Server 2008 R2
•Windows Vista
•Windows Server 2003 SP1
•Windows Server 2003 (64-bit)
•Windows XP x64 edition
> XP x64 edition
> x64 edition
+ если нужно грузится - нужна поддержка биос
Икспишка то? Ну была когда то такая ось, довольно годная.
Google Porno Torrent
Как давно я сюда не заходил...
Вот как ты голубым выделил - я сразу понял намек.
Опять разлогинило :/
А что там понимать то? apt-get install google-porno-torrent
Да и вообще прон - стандартное состояние линукса
кстати, если отключат инет, а подрочить на порно будет невтерпеж - заходи, одолжу свой терабайтник.
заходи, такого мне не жалко, если психика выдержит
да, я пуританец, в этом смысле.
Даже если мужиков 11, а баб 10?
Не, из под рута. потому sudo писать не надо.
Я именно так и поступил. Один хрен винт переразбивал с нуля.
2 терабайта это максимум для MBR. Причем, насколько помню, не 2Тб на раздел, а 2Тб на весь диск.
Если разбиваешь новый винт - есть смысл. Как минимум в использовании UEFI загрузчика и более свободном управлении разделами. Ну и future proof, вдруг M$ через пару лет вообще откажется от поддержки MBR, а винт уже будет заполнен инфой, и ты не сможешь его переразбить? :) Если конечно ты не собираешься ставить на него древние оси.
Разделы по 20 экзабайт!
Дополнительная защита ваших яиц!
Всего за 8.99$!
С линукс - норм
правильно говорить Resticted Boot. Безопасностью тут и пахнет
На моем ноуте шла виста, которая вместе с вендорскими промочками из 2 гигов сжирала 1.5 и включалась/выключалась минуты 3-4
не недружелюбный а тупо непривычный
Семерка весит больше 10. Лично у меня папка windows весит 30)
Что? Ты не через chroot Linux ставишь?
Это как?! Поверх старого что ли?
Грузишься с лайфсидющки, монтируешь свой старый корень и все что к нему прилагается, делаешь туды чрут, профит, ты в консоли своей старой системы :)
Проблемы бывают разве что если версии ядра сильно отличаются. Но если болванка и ось на винте примерно одного возраста - все норм.
Фубля. У нас даже самые ретрограды это говно позаменяли на граб. Ибо чуть более чем неюзабельно.
Но разве это принципиально?
Посиди годик-два с Лилой, поймешь :) Желательно почаще обновлять ядро, двигать разделы и т.п.
http://demotivation.me/images/20100907/ysonybxtscgb.jpg
> Тут согласен, есть проблемы у линуховых оконных менеджеров.
Это какие например? Ни каких проблем в bash не замечал. Разве что емакс не очень привычен. Ну и ман первое время доставляет своим уникальным управлением, но подбором быстро подбирается.
Невозможность работы с клавы (если у тебя не xmonad или ему подобное).
Притом самому устанавливать после установки Linux нужно только ~/.porn
Остальное идет из коробки
Стелс 100500го уровня.
P.S. Ксати, ты всегда можешь отмазаться, что это никакой не porn а pom (т.е. конфиг от maven'а).
+1
А он его разве в ~ запихивает?
А откуда девушке/сестренке/маме (нужное подчеркнуть) знать об этом? :)
А как знание линукса коррелирует со знанием мавена?
> ~/.porn
так простой ls -a же стазу откроет все тайны. или нет?
Сам то как будешь список файлов смотреть? :) Вбивать имена файлов по памяти? Достаточно же на папки в /home поставить правильные атрибуты, чтобы друг к другу не могли лазать.
> Маме дай ограниченного пользователя.
Да они в линухе все ограниченные. Как и в новых виндах. Просто sudo не давать и все.
> И ни в коем случае не рассказывай про консоль
Ага, а особенно про вполне так документированные фишки с грабом и лайф сидюшками, которые позволяют порутить линух за пару минут. В убунуте вон вообще по дефолту пункт есть "Drop to root prompt" в менюхе восстановления системы (пароль не спрашивает, диск/флешку не надо).
Это как? SELinux? Или mount во время загрузки на sudo подделку?
Ээээ. Просто не вносить в sudoers и в группы, которым разрешено sudo же.
Так достаточно только одного вроде.
Чтобы дать sudo достаточно одного :)
Чтобы не давать суду - надо не выполнить оба условия :)
Разве не логично?
Память нужно тренировать. А тут совмещаешь приятное (прон) с полезным (мем)
Хэш не дает конфиденциальность. Злоумышленник может подобрать имя файла, соответствующее данному хешу. Тут нужно юзать MAC. Это разовьет не только память, но и устный счет ;)
P.S. Я спать... 4 ночи блин, задолбался каждый раз прокручивать этот тред на сотике.
Омское время!!!
Через оперку небось заходите? Попробуйте UCWeb - куда круче, чем оперка. http://ucweb.com/
Не, штатный ведробраузер.
З.Ы. ОП поди уже пожалел, что выложил гк. Ему должно весь ящик заспамить.
У меня уже был пост с 200+ комментами, ящик жив.
Бангкок же!
Угу. У меня на старом сотике стоял именно бангкок, потому что отключить DST на российских поясах не представлялось возможным.
в Бангкоке сейчас неплохо
несмотря на пробки из-за демонстраций
белому человеку так вообще коммунизм - часовой массаж по 200 бат (=рублей), ммм
поэтому человек на удалёнке (если ему что вдруг перепадёт) будет постоянно делать какую-то не самую интересную и важную работу, скорее всего, рутинную - поэтому он нифига не разовьется профессионально
такой работник сможет повысить свой доход только выполнением одних и тех же задач всё быстрее за единицу времени - т.е. количественно, но никак не выполняя все более сложные и дорогие задачи - т.е. качественно
в общем, тупиковый путь
как дополнительный доход к основной занятости ещё сойдет, но как основная работа - хм, нет
Да дело даже не в том, что много не заработаешь. Фрилансом нервов и времени больше уходит.
> удаленка
Удаленка - не фриланс ;) Это самая обычная работа, просто не надо ехать в офис.
вполне жизнеспособная схема, если в регионе есть свой проверенный человек, готовый возглавить группу из хотя бы нескольких человек, и которой можно отдать проектик
просто в этой схеме проверенный человек будет не только и не столько разработчиком, сколько менеджером - решать вопросы дисциплины, мотивации, планирования, расширять штат, отстаивать перед hq решения...
Более чем 140% всех РТ/эмбеддед - это Линукс по причине того, что его можно урезать чуть ли не до размеров 3-дюймовой дискеты. Типичная установка декстопных версий Линукса - примерно 2 Гб. Даже если Виндовс занимает всего 1 Гб (чет я сильно сомневаюсь, но проверить не на чем), то это на столько несущественная разница (для декстопов же!), что никого это не волнует.
При этом всегда можно выбросить ненужное, например, драйвера для устройств, которые не установлены в системе.
Какие такие полезные вещи устанавливает Виндовс, кроме системы, аналога которм нет в типичном Линукс десктопе?
;)
gfvs в этом плане лучше
Вот только гном - говно, а кде не умеет в gvfs
Я думаю, что в случае RT/Embedded мало кого беспокоит удобство установки ;) И врядли эти области интересуют Stertor'а.
> При этом всегда можно выбросить ненужное, например, драйвера для устройств, которые не установлены в системе.
А потом вкомпиливать их обратно, когда купишь новую железку... Ну разве что совсем уж ненужное выкинуть, типа старого барахла и чисто серверного железа... Просто эти 2 секунды при загрузке и несколько метров памяти и диска меня не особо напрягают...
XP 75 edition весит 75 мегов.
Тоньше, еще тоньше.
На современных телевизорах, если память не изменяет, диски всего что-то в районе 5 Гб (а может даже и меньше), и там и не только система, там и браузер и ж.скриптовой херни к нему...
Ох. не, это чтобы ВМ Самсунговскую поставить (это вместе с виртуалбоксом и т.д.) нужно минимум 5 Гб. Сам диск скорее всего меньше.
p/s/
Переносят ли комары СПИД?
Да ты бы не нашел бы тролля среди обычных людей, даже если бы ссыл тебе в лицо, чувак)
Крайне злопамятен и мстителен. Упертый. К людям не привязывается.
Трудолюбив, но чаще не завершает начатую задачу по причине отвлекаемости и недостатка терпения. Обидчив. Принципиален. Эгоистичен. Хочешь, я скажу, почему у тебя почти нет друзей?
Потому что тебе хочется что бы их у меня не было?)
Хочешь я угадаю как тебя зовут?
Ты ещё скажи что у тебя есть друзья.
>>Ты ещё скажи что у тебя есть друзья.
У меня только родные и близкие.
Но ты однозначно хуже.
Жаль, что маньга оный не сексуальный.
Ребят, что поругаться больше негде? Я понял бы вы лично друг друга знали. Приходите на ресурс чтобы что-нибудь новенькое узнать. В конце концов если хочется только поругаться, то идите на чаны и бороды.