PHP: простая файловая шара (upload, download, delete, open)

DOWNLOAD/OPEN

При генерации файла обязательно делаем скобки вокруг “file_name”, иначе в случае если в имени файла есть пробел firefox будет показывать только первое слово, хотя другие браузеры этим страдать не будут. Mozilla давно сказала, что исправлять это не будет т.к. такое поведение соответствует RFC.

Читать дальше

Oracle DB: разные хинты

использование sqlldr для загрузки данных в базу

sqlldr  – SQL*Loader. Позволяет загружать данные в базу из файла, например csv. Пример использования есть тут.

По умолчанию для работы пользователя с sqlldr пользователя нужно добавить в группу dba или запускать sqlldr из под sudo.

Читать дальше

Невозможно любить всех

Человеку свойственно любить в первую очередь себя, семью, друзей и знакомых, а уже потом всех остальных. Помимо простого “так заведено” это объясняется и пользой для общественного развития. Жизнь каких людей человек может изменить в лучшую сторону в первую очередь? Безусловно свою, а потом близких, которые ему доверяют.

Читать дальше

Впечатления от цикла Темная Башня

Циклу ставлю 7 из 10. Первые части просто потрясающие, особенно понравилось “Извлечение троих” и “Бесплодные земли”. Последние в целом неплохие, но там начались разного рода противоречия и спорные авторские решения. Дальше спойл.

Любимый момент серии книг с детства, а я начинал читать цикл в детстве – стрелок в теле Эдди.

Читать дальше

Как сбросить пароль Windows на ноутбуке с запароленным BIOS

Знакомые дали залоченный по BIOS ноут Acer Aspire ONE, просил пароль для входа, а после перезагрузки опять просил пароль и ОС не загружал. В менюшках удалось выйти на запрос master пароля с сгенерированным кодом блокировки на экране. На сайте  ввел код с экрана 59351360, он выдал мастер 46039966.

Читать дальше

Huawei Honor 8 – телефон, который стоит своих денег

Затестил Huawei Honor 8 с поездки в Шэнчжэнь.

Впечатления от него позитивные, считаю, что совсем не зря на Ya-market у него оценка 4,5.

Плюсы:

  • Быстрый (4×2 core CPU, 4гб ОП)
  • Смарт-кнопка с отпечатком пальца (дактилоскопический датчик) и возможностью биндинга любых приложений на нее (контакты, фонарик, пульт, etc)
  • ИК-передатчик для управления пультом и приемник для возможности тонкой настройки (ставишь реальный пульт напротив датчика, принимаешь сигнал, биндишь к кнопке в виртуальном пульте – круто!)


Читать дальше

Ruby: работа с Excel (xls) и CSV с гемами spreadsheet, axlsx

В целом про csv/excel тут.

Для работы с CSV достаточно системной библиотеки CSV.

 

CSV

Работа с CSV

# открываем файл, каждая строка является массивом, каждая ячейкам – элементом массива

csv.foreach("csv.csv") do |line|
puts line.inspect
end

# если нам нужно сохранить весь файл в двумерный массив (array, в нем строки в виде отдельных array) – просто вызываем read.

Читать дальше

Email разные заметки (mta, mda, msa, mua, pop, imap; mutt, mail, ssmt; Cisco ESA, Outlook)

Терминология, протоколы, описание работы
  • Mail Transfer Agent (MTA) – это mail server (mail router, mail exchanger or MX, SMTP gateway), MTA (почтовый сервер) отвечает за передачу сообщений от отправителя получателю. В DNS для обозначения MTA для доменов используется запись MX. Для MX записи так же можно задать значение preference для нескольких записей, если компания использует несколько mail серверов (отказоустойчивость и балансировка).


Читать дальше

Excel: разные хинты

Отдельные три таблицы
=ИНДЕКС($M$10:$P$13;ПОИСКПОЗ(B13;$L$10:$L$13;0);ПОИСКПОЗ(C13;$M$9:$P$9;0))
=ИНДЕКС($W$7:$AM$23;ПОИСКПОЗ(A13;$V$7:$V$23;0);ПОИСКПОЗ(B13;$W$6:$AM$6;0))
ИНДЕКС($AQ$7:$BO$31;ПОИСКПОЗ(A29;$AP$7:$AP$31;0);ПОИСКПОЗ(B29;$AQ$6:$BO$6;0))

Объединение всех трех через 2 ЕСЛИОШИБКА
=ЕСЛИОШИБКА(ЕСЛИОШИБКА(ИНДЕКС($K$7:$S$15;ПОИСКПОЗ(A5;$J$7:$J$15;0);ПОИСКПОЗ(B5;$K$6:$S$6;0));ИНДЕКС($W$7:$AM$23;ПОИСКПОЗ(A5;$V$7:$V$23;0);ПОИСКПОЗ(B5;$W$6:$AM$6;0)));ИНДЕКС($AQ$7:$BO$31;ПОИСКПОЗ(A5;$AP$7:$AP$31;0);ПОИСКПОЗ(B5;$AQ$6:$BO$6;0)))
  • Excel полезные украшательства:
    • Форматировать как таблицу
    • Формат – ширина столбца – 10 и не нужно потенциально выравнивать каждый столбец
  • Заменяем запятые на точки в числах
Часто при вводе технических данных, например ip-адресов, удобно пользоваться цифровым блоком на клавиатуре справа.


Читать дальше

Hardware: работа с устройствами в Linux (udev, uname, lspci, lscpu, lsusb, sensors; drivers-modules insmod/rmmod, lsmod, depmod, modprobe, modinfo)

udev
udev - это демон, который отвечает за виртуальную файловую систему /dev.
/etc/udev/ - каталог настроек демона.
/etc/udev/rules.d/ - каталог с правилами, по которым udev создаёт файлы устройств в /dev.
70-persistent-net.rules - правило для создания сетевых интерфейсов.


Читать дальше