(и еще 18578 записям на сайте сопоставлена такая метка)
Другие метки пользователя ↓
bash full path fullpath linux membrane switch otto dix realpath scissor switch self path shell unix unix-like армия белая ночь белый пепел бог варшавский взрыв вина военные глобализация горький гражданка жизнь карлсон клавиатура космология математика наука ножничный механизм песня о буревестнике права доступа публичные лекции радиация религия смерть соло гитара стакан творчество удар устройство кнопок физика фонд «династия» функции чипизация число зверя эстетика ренессанса ядерное оружие
Определение полного пути shell скрипта средствами самого shell ( аналог realpath() ) |
Дневник |
Способ 1, самый простой с помошью readlink:
#!/bin/sh #выведет полный путь в канонической форме readlink -fn "$0"
Способ 1 требует наличия программы readlink
Способ 2, без приведения к канонической форме пути, но средствами только самого shell интерпретатора:
#!/bin/bash #Способ получения полного имени скрипта, #без приведения к канонической форме пути, #средствами только самого shell интерпретатора #REALPATH DETECTED (${string:position:length} - extract subtring from string) if [ ${0:0:2} == './' ]; then FULL_NAME="$PWD/${0:2}" else FULL_NAME="$0" fi echo "Full program name: '$FULL_NAME'"
Способ 2: работа проверена только в bash реализации shell. В sh, csh, ksh не уверен что будет работать.
Если Вам известны ещё способы, то желательно написать его в комент.
Метки: linux bash shell realpath full path fullpath self path |
Чипизация и "Число зверя 666" (Глобализация) |
Дневник |
Типичный представитель - фильм о чипизации начеления в масштабах планеты и России в частности. (на YOUTUBE)
Всё это, конечно, инетересно, но вот момент где речь идёт о "Числе зверя" у меня вызвал большое подозрение и подставил под сомнение все остальное о чём говорится в фильме. В фильме говорится, что информацию в базу данных компании продающей чипы можно только вносить и считывать, но запрещено удалять. Таким правам доступа, по версии фильма, соответствует число 666.
Итак, по порядку:
Любой маломальски опытный пользователь unix-like систем знает, что установка прав на файл, а именно на это есть ссылка в фильме, производится с помощью команды
chmod <октет владельца><октет группы><октет всех остальных> <имя файла>
что такое "владелец": это имя (ID) учётной записи в системе. При создании файла по умолчанию владельцем файла становится тот пользователь, который этот файл создал. В последствии владельца можно сменить на любого другого пользователся системы.
что такое "группа": группа это тоже имя (ID), но не одного пользователя, а группы пользователей, т.е. в соответсвие этому ID может ставиться несколько ID учётных записей системы, таким образом объединяя учётные записи в группы.
что такое "остальные": это имена (ID) пользователей, не соответствующие не владельцу, не учётным записям из группы.
например, возьмём "Число зверя": chmod 666 database.file
этим самым мы установили следующие права на файл database.file:
первая 6 - "владельцу" разрешается записывать в файл, считывать файл,
вторая 6 - "группе" разрешается записывать в файл, считывать файл,
третья 6 - "остальным" разрешается записывать в файл, считывать файл.
Всем трём запрещается запускать файл, но этого и не требуется для файла данных.
Таким образом, это практически полные права доступа :)
Вообще говоря, запрет на удаление файла не установить только правами на файл. Такие атрибуты устанавливаются только у директорий (у директорий show_entries,write_entries,enter в отличии от файлов read,write,exec). Т.е. изнчально их идея очевидно люто ламерская, при том авторы фильма ссылаются именно на обычный учебник по юниксам.
Очевидно, чтобы появился хоть какой-нибудь здравый смысл в том что они тьам наговорили, нужно хотябы сказать что речь идёт не о стандартной системе прав доступа к файлам в юникс, а какой-то СУБД. Но авторы видимо адресуют фильм всякому быдлу и гуманитариям, не утруждая себя нормально разобраться в вопросе. Дурачья, которое ведётся на всё подряд, всегда найдётся не мало, на них и расчёт.
Далее:
права на файл, например число 666, как было описано выше это фактически не шестьсот шестьдесят шесть, а три отдельных числа. Более того, эти числа даже не в десятичной системе записаны, а в восьмеричной, т.е. каждый октет можно записать только числами от 0 до 7. Если перевести число 666 в десятичную систему, то получим вообще число 438.
666 - это битовая маска в восьмеричной системе счисления, в данном случае, а не число, если уж на то пошло.
Ну и на засыпку, кого коробит запись
"chmod 666 database.file"
может всегда написать абсолютный эквивалент
"chmod ugo=+r+w-x database.file"
что, очевидно, менее удобно, но зато по-христиански.
Метки: linux unix unix-like глобализация число зверя права доступа чипизация |
Страницы: | [1] |