Сообщения

Сообщения за ноябрь, 2012

Linux: вывести на печать определенные строки (bash, linux)

Всем привет. Например, Вам нужно вывести на печать определенные строки. Будь то в файл или на экран. Надеюсь Вы уже знаете как найти нужные Вам строки. Если нет, то подскажу, для этого Вам поможет команда grep  и egrep.  А вывести нужные строки на экран, Вам поможет функция  sed. Вывод на печать определенные строки Например Вам нужно вывести 100-120 строки на экран: sed -n '100,120p' some_file.txt (вывести на печатать строки с 100 по 120) Есть немного измененный вариант, который работает немного быстрее: sed -n '121q;100,120p' some_file.txt Ну вот и все, ах да. Если вы хотите вывести определенные строки в файл , то вам нужно в конце просто добавить:  > res_file.txt Вышеуказанный пример полностью будет выглядеть следующим образом: sed -n '121q;100,120p' file.txt > res_file.txt Вот и все. Теперь Вы умеете выводить нужные строки на печать или в файл . linux, bash

Как увеличить max_allowed_packet (Linux, Debian)

Нужно увеличить максимально возможный размер SQL-файла при его выполнении на сервере? Вам нужно изменить файл: my.cnf Откройте его:  nano /etc/mysql/my.cnf Увеличить  max_allowed_packet  Найдите там [mysqld]  на следующей строке добавьте: max_allowed_packet = 64M Если такая строка уже там существует, то просто измените размер (указывается в мегабайтах). После всего вышеперечисленного просто перезагрузите mysql-сервер: /etc/init.d/mysql restart mysql, linux, debian,  max_allowed_packet  

INSERT ... ON DUPLICATE KEY UPDATE или Как вставить строку если она не существует и обновить в противном случае (MySQL)

Добрый день ) Уважаемые программисты, наверняка каждый из Вас сталкивался с проблемой вставки данных в БД, если строки не существует и обновление ее, если таковая уже есть. Как вставить данные в базу данных MySQL, если их не существует и обновить в противном случае Наверняка Вы часто использовали конструкцию типа: $result  =  mysql_query ( "SELECT `uid`, `text` FROM `t_userinfo` WHERE `uid`='". $uid ."'" ); if ( mysql_num_rows ( $result ) >0 ) { // Если строка имеется, то обновляем    mysql_query ( "UPDATE `t_userinfo` SET `text`='". $newtext ."' WHERE `uid`='". $uid ."'" ) ; } else { // Если строки нет, то добавляем новое значение в БД    mysql_query ( "INSERT INTO `t_userinfo` SET `text`='". $newtext ."',`uid`='". $uid ."'" ) ; } Немного муторно, не правда ли? И производительность немного страдает, все таки столько действий. Допустим, что эта таб

Архивация файлов или как запаковать и распаковать файлы в Linux

Всем привет ) Не буду писать длинные петиции вступления. Вот основные команды работы с архивами: Архив RAR Как запаковать файлы в rar или создать архив rar (rar-архив): rar a -m5 'имя нового архива' 'имя файла/папки' Имя файла и/или папки можно перечислять через запятую Как распаковать архив rar: unrar x 'имя архива.rar' Архив ZIP Как запаковать файлы в zip или создать архив zip (zip-архив): zip -r -9 'имя нового zip-архива' 'имя файла/папки' Как распаковать zip-архив: unzip 'имя zip-архива' Архив TAR Как запаковать файлы в tar или создать архив tar (tar-архив): tar -cvf 'имя нового tar-архива' 'имя файла/директории' Как распаковать tar-архив или извлечь файлы из tar-архива: tar -xf 'имя tar-архива' Архив GZIP / gz Как запаковать файлы в gz или создать архив gzip (gzip-архив): tar -zcvf 'имя нового gzip-архива' 'имя файла/директории'