среда, 31 марта 2010 г.

Visio. Направление движения курсора

Один из способов избавиться от бага в MS Visio, когда курсор движется справа налево.

Включите язык с письмом справа налево на вкладке Языки редактирования диалогового окна 2007 системы Microsoft Office "Языковые параметры".

После включения языка с письмом справа налево в диалоговом окне 2007 системы Microsoft Office Языковые параметры кнопки "Слева направо" и "Справа налево" появятся в большинстве программ выпуска 2007 Office. Эти кнопки можно использовать совместно с другими инструментами для смены направления при вводе и выравнивании текста.

вторник, 30 марта 2010 г.

Команды для поиска больших файлов в заданной директории

Для вывода отсортированного списка файлов размером больше 500Мб, находящихся
в дереве файловой системы начиная с текущей директории можно использовать команду:

find . -type f -size +500M -exec ls -l {} \; | sort -k5 -n -r| less

Для вывода отсортированного по размеру списка директорий можно использовать команду:

find . -type d -maxdepth 1 -exec du -s {} \;|sort -k1 -r -n| less

Для выявления конечной директории с большими файлами можно снять ограничение на
рекурсивную проверку:

find . -type d -exec du -s {} \;| sort -k1 -r -n| less

Найти все avi, mpg, wmv файлы можно так:

find . \( -iname "*.avi" -o -iname "*.mpg" -o -iname "*.wmv" \) -type f -exec ls -l {} \;| less

PS. Вместо ls можно было использовать встроенные опции -ls или -printf "%s %P\n",
но %P не всегда легко вспомнить, а вывод -ls не совсем привычен.

Команды пакета apt

apt-get update обновление репозитария
apt-get dist-upgrade полное обновление ОС
apt-get check проверить текущее состояние системы
apt-get install установить пакет. Всё скаченное apt-get лежит в /var/cache/apt/archives.
apt-get -f install исправить зависимости
apt-get install -d скачать пакет не устанавливая. Лежать будет в /var/cache/apt/archives.
apt-get source скачать исходный текст пакета
apt-get remove удалить пакет. Результаты можно посмотреть в /var/log/user/info
apt-cache search поиск пакета по описанию
apt-cache showpkg показать описание пакета

MySQL. Несколько полезных команд

SHOW TABLES; # показать таблицы в БД
SHOW COLUMNS FROM db; # показать поля таблицы db
USE mysql; # перейти в БД mysql
SELECT host,user FROM user; # показать поля host, user таблицы user
DROP TABLE transport; # удалить таблицу transport
DELETE FROM user WHERE user='acct' AND host='%'; # удалить конкретную запись
UPDATE db SET Delete_priv='Y' WHERE user='acct'; # изменить значение поля в записи
FLUSH PRIVILEGES; # применить внесённые изменения
mysql -u root -p12345 postfix < DB.sql # пакетное выполнение SQL выражений для базы данных postfix
ALTER TABLE mailbox ADD (uid int(10) unsigned DEFAULT '107' NOT NULL); # добавляем в таблицу mailbox обязательное поле uid со значением по умолчанию = 107
ALTER TABLE mailbox DROP uid; # удаляем поле uid из таблицы mailbox
GRANT ALL PRIVILEGES ON DBName.* TO UserName@localhost IDENTIFIED BY '12345'; # дать все права на базу DBName пользователю UserName, подключающемуся с localhost с паролем 12345
CHECK TABLE TableName; проверить целостность таблицы TableName
REPAIR TABLE TableName; исправить целостность таблицы TableName

Удобный поиск по истории команд в консоли в Debian GNU Linux

C помощью кнопок PgUp, PgDwn (страница ввсерх/вниз) можно листать хистори введенных ранее команд,
при этом в отличии от использования клавиш управления курсором, при наличии в строке ввода
каких-то символов они будут использованы в качестве маски для фильтра.
Т.е. введя "ssh" и нажав PgUp/PgDwn можно просмотреть введенные ранее команды с использованием ssh.

Стандартно, данная комбинация кнопок на Debian деактивирована.

Находим в директори /etc файл, с именем inputrc редактируем его,
добавив строки, в случае, если позиционирование по хистори не работает:
# alternate mappings for "page up" and "page down" to search the history
"\e[5~": history-search-backward
"\e[6~": history-search-forward

обычно эти установки в Debian просто закомментированы.

Изменив этот файл, вы настраиваете данные кнопки для всех пользователей.
Если необходимо настроить для какого-то пользователя, то настройки эти есть в файле .inputrc
в домашней директории. Данный файл можно создать на основе общесистемного аналога из /etc
cp /etc/inputrc ~/.inputrc

понедельник, 29 марта 2010 г.

Подборка полезных консольных команд и приемов работы в bash

Краткий справочник svn

svn checkout http://repository.url/svn/name — извлекаем файлы проекта из репозитория, сокращение: svn co;
svn update — получаем обновления из репозитория, сокращение: svn up;
svn update -r rev_num ./file_name — извлекаем ревизию файла с номером rev_num;

Полезные ссылки




APTITUDE vs. APT-GET


При работе с операционными системами, базирующимися на Debian и использующими apt (например, Ubuntu), вы познакомитесь с некоторыми инструментами управления установленным ПО.

Trafshow

Trafshow – полноэкранное отображение текущего сетевого трафика в сети.
TrafShow продолжительно отображает информацию о сетевом трафике на сконфигурированном интерфейсе в соответствии с булевым выражением. Программа периодически сортирует и обновляет эту информацию.

Git-remote

Взято здесь

Предположим, что вы работает в своем git-репозитории. Напатчили несколько веток, и вдруг - решили все переделать. Вернуть как было.

Git. part 7

Взято здесь

Ветки в git - как ветки деревьев, постоянно обновляются и растут. Одно и то же символьное имя ветки (refs/heads/foo) может указывать на разные коммиты в разные моменты времени. В отличие от веток, теги (tags) - специально созданы для неизменяющихся по времени ссылок.

Git. part 6

Взято здесь

SHA1-имена объектов как уникальные идентификаторы - это конечно удобно. Для роботов. Люди как-то привыкли называть друг друга по коротким именам, а не по кодам ДНК.

Git. part 5

Взято здесь

Для тех, кто раньше работал только с CVS или CVS++ (ну то есть Subversion), концепция коммитов-слияний (merge) может оказаться не очень понятной. Так что я решил обратиться к классике для иллюстрации слияний.

Git. part 4

Взято здесь

Git не был бы системой контроля версий, если бы не позволял хранить историю изменений деревьев.

Для хранения истории в git используются специальные объекты-commit'ы. Каждому коммиту соответствует ровно одно дерево. Коммиты также хранят информацию о "предках" этого дерева - то есть ссылки на т.н. родительские коммиты. Можно считать, что коммит указывает, из каких деревьев (их может быть несколько) произошло текущее дерево, а также кто в этом виноват (автор коммита) и по какой причине (сообщение коммита).

Git. part 3

Взято здесь

В первой части я уже упоминал, что репозиторий git представляет собой картотеку объектов, объединенных ссылками друг на друга.

Из четырех типов объектов в git (blob, tree, commit, tag) только blob-ы не могут содержать ссылки. Все остальные объекты, по сути, являются просто ссылками либо на blob-ы, либо на другие ссылки.

Git. part 2

Взято здесь

Объекты типа blob(Binary Large Object) - это основа репозитория. Это маленькие безымянные герои. Безымянные в прямом смысле - это просто содержимое, без имени. Если вы добавляете в git файл tutorial.txt с содержимым "Hello, world!", то это результирующий blob-объект будет содержать строчку "Hello, world!" и ни слова о tutorial.txt. Это очень похоже на иноды (inodes), используемые в файловых системах, если вы понимаете о чем я.

Git. part 1

Взято здесь

Репозиторий git - это просто коллекция т.н. объектов, объединенных ссылками друг на друга. Каждый объект - это некий файл специального формата. У каждого объекта есть "имя", которое вычисляется как SHA1 хеш содержимого объекта и записываемся как шестнадцатеричное представление этого хеша. Длина хеша равна 20 байтам, так что шестнадцатеричное представление содержит 40 букв и цифр.