9 мар. 2012 г.

Команды разные нужные

Это не стандартный список множества команд, каких много в Интернете,  а то, что чаще надо мне (может ещё кому пригодится). Понятно, что я их откорректировала для себя. И, естественно, они мной проверены.
Итак, список команд...

Файлы
Найти файлы по шаблону и вывести пути и названия в терминал:
find -name "doc*"
Найти файлы и сохранить список найденных в файл:
find -name "doc*" > file1
Найти файлы рекурсивно (начиная с директории, где находимся) и удалить их (вместо rm указать нужное действие):
find -name "doc*" -exec rm '{}' \;
или так, с указанием директории, с которой начинать поиск:
find /home/user/doc -name "doc*"
Пример (ищем "RAWки" в папке, где находимся и перемещаем их в папку, где они должны храниться):
find -name "*.RW2" -exec mv '{}' /home/user/Фото \;
ls -l   Показывает содержимое директории с подробностями (права и даты)
 Копировать файл в текущую директорию (где сейчас находимся; обозначается точкой в конце команды):
cp "/home/user/doc/file.txt" .

Разные действия с файлами.
Конвертируем pdf-файл в кучу картинок png:
convert /media/disk/up_eng_1.pdf image_%03d.png
/media/disk/up_eng_1.pdf - входной файл (пример)
image_%03d.png - выходные файлы (будут появляться в виде image_000.png, image_001.png и т. д.)
Конвертируем картинки png в один файл pdf:
convert *.png file.pdf
Для работы программы convert устанавливаем:
sudo apt-get install imagemagick
Конвертируем gif в avi (noviy-god.gif - входной файл (пример) -o noviy-god.avi - выходной файл):
mencoder noviy-god.gif -ovc xvid -xvidencopts bitrate=100 -o noviy-god.avi
Разделить дорожку wav или ape на треки.
Ставим из основных репов:
sudo apt-get install cuetools
sudo apt-get install shntool

+Для нарезки wav:
sudo apt-get install wavpack
Ставим с сайта debian для нарезки ape:
wget http://debian-multimedia.org/pool/main/m/monkeys-audio/libmac2_3.99-u4-b5-0.2_i386.deb
wget http://debian-multimedia.org/pool/main/m/monkeys-audio/monkeys-audio_3.99-u4-b5-0.2_i386.deb

Режем ape:
shntool split 'Artist - Album.ape' -f 'Artist - Album.ape.cue' -o flac -t "%p - %t"
где: %n-track number, %p-performer (исполнитель), %t-title.
На выходе получаем файлы flac с названиями: Artist - Title.
(Наверно, можно сразу и теги заполнить, не пробовала, использую easytag).

Запись дисков
Создание iso-образа из директории:
mkisofs -J -L -r -V disk_name -o output_file.iso input_direсtory
Запись образа на CD с указанием максимальной скорости:
cdrecord --speed=8 --eject -v dev=/dev/scd0 image.iso
Запись директории на DVD:
growisofs -Z /dev/scd0 -R -J -V name /directory
-Z первая сессия на диске, -M (вместо -Z) значит дозапись на диск, -V название диска name, /directory путь к директории для записи на диск.
С закрытием диска:
growisofs -dvd-compat -Z /dev/scd0 -R -J -V name /directory
Запись ISO на DVD (R или RW):
growisofs -Z image.iso
Чтобы закрыть диск после записи после growisofs добавить параметр -dvd-compat
Запись DVD-RW:
Конвертация в последовательный формат:
dvd+rw-format -blank=full /dev/scd0
Запись первой сессии:
growisofs -Z /dev/scd0 -J -V name -R ~/Фотографии/Photos/
Запись последующих сессий (-V обязательно, иначе название диска не сохранится):
growisofs -M /dev/scd0 -J -V name -R ~/Фотографии/Photos/file.jpg
Показывает инфо про двд-диски и двуслойные диски:
dvd+rw-mediainfo /dev/scd0
Примечание: не везде есть scd0, устройство это может обзываться cdrom или sr0 (точно см. /dev).
Запись DVD - руководство (подходит, хоть там и FreeBSD)))
Если привод закрыт, открывает, если открыт - закрывает:
eject -T /dev/scd0
Пример использования. Пишем такой скрипт...
#!/bin/sh
eject -T /dev/scd0 && sleep 5 && eject -T /dev/scd0

...делаем исполняемым и назначаем hot-key, после нажатия которого лоток откроется (успеть ровненько уложить диск!) и через 5 с закроется.

Управление пакетами
Смотрим файлы, принадлежащие пакету package (аналог ПКМ на пакете в synaptic'e - свойства - установленные файлы):
dpkg -L package
Смотрим версию пакета package, где его конфиг, кто автор и т. п.:
package -V
Поиск пакета package в подключённых репозиториях:
sudo apt-cache search package
Справочник команд apt-get и dpkg

Управление устройствами
Примонтированные диски, разм, исп, дост, исп%, куда смонтирован:
df -h
Процент для системного использования (сколько система зарезервирует):
sudo tune2fs -m 1 /dev/sda5
где -m 1 - в данном случае указание, что следует использовать 1% объёма HDD для использования системой (по умолчанию система резервирует 5%; для корневой директории лучше эту цифру не трогать).
Права, владелец, дата-время подкл, uuid:
ls -l /dev/disk/by-uuid/
Инфо о диске sdxx (модель, параметры и т.д.):
sudo hdparm -i /dev/sdxx
SMART-инфо диска+модель и т.п.:
sudo smartctl -a /dev/sdb
Установка smartctl:
sudo apt-get install smartmontools

Проверка файловой системы диска/раздела:
(перед проверкой обязательно отмонтировать раздел (диск) командой umount; если это раздел, на который установлена система, проверку выполнять с live-cd!!)
Только проверка, без исправления:
sudo fsck -p /dev/sdb1
Проверка и исправление ("тихий" режим - на все вопросы ответ yes -y):
sudo e2fsck -y /dev/sdb1
Проверка и исправление ошибок (по каждой ошибке будет спрашивать - исправить или нет):
sudo e2fsck /dev/sdb1

Права на файлы и папки
Назначаем владельцем папки films пользователя user из группы user (надо было, когда монтировала второй диск в домашнюю папку):
sudo chown -R user:user /home/user/hd1/films
Отбираем право запуска у файла file (вместо одного file для группы файлов: *.xxx):
chmod u-x file
Добавляем право запуска для файла file:
chmod u+x file
Хороший мануал по правам доступа.

Интерфейс системы
Запускаем окно настройки скринсейвера xscreensaver:
xscreensaver-demo
Запись видео с рабочего стола (один из вариантов, которых множество можно найти в Интернете):
ffmpeg -r 10 -g 120 -s 1280x1024 -f x11grab -i :0.0 -s 640x512 -vcodec qtrle sc-23-11-10.mov
Свои уведомления, ставим:
sudo apt-get install libnotify-bin
Вызываем через notify-send "Заголовок" "Сообщение", используем где надо и не надо.

Сеть
Смотрим какие проги на каком порту сидят и чем занимаются:
netstat -na | grep LIS | grep -v "127.0.0.1"
Wikipedia:
Состояние (State) LISTEN (LISTENING) показывает пассивно открытые соединения («слушающие» сокеты). Именно они и предоставляют сетевые службы. ESTABLISHED — это установленные соединения, то есть сетевые службы в процессе их использования.


Железо
hwinfo   Инфо о железе (мать, видюха, подключенные устр-ва, диски, процессор и т. п.)

Система
Подключает разделы своп из /etc/fstab "на ходу":
sudo swapon -a
Задание для at:
at hh:mm enter
run_programm enter
ctrl+d
Для запуска проги с GUI:
at hh:mm enter
export DISPLAY=:0.0 enter
run_programm enter
ctrl+d

Пример:
at 15:30
export DISPLAY=:0.0
qmmp -p

Посмотреть задания at:
atq или at -l
Сессия sudo
Со сменой дом. каталога user'a на root и переходом в него:
sudo -s
Со сменой домашнего каталога user'a на root, но без смены каталога, в котором находимся:
sudo su и sudo -s -H
Выход из сессии sudo: Ctrl+D
Все презагрузки:
last reboot
Инфо о команде command:
whatis command
Сеанс XFCE:
Выход из системы не показывая диалог завершения сеанса:
xfce4-session-logout -l
Выключить ПК не показывая диалог завершения работы:
xfce4-session-logout -h
Перезагрузить ПК, не показывая диалог выхода:
xfce4-session-logout -r
Добавить задачи для cron:
crontab -e
Показать установленные задачи cron:
crontab -l
Здесь лежат задачи для cron (доступ только для root'a):
/var/spool/cron/crontabs
Версия системы, название:
cat /etc/lsb-release
То же, но очень кратко:
cat /etc/issue

Простой backup с помощью rsync:
Сначала монтируем раздел диска (флешку или другое устройство), на который будем сохранять backup системы (если оно не смонтировано):
sudo mount /dev/sdХХ /mnt
где /dev/sdХХ - наше устройство - получатель backup'a,
/mnt  - директория, куда устройство монтируется.
Запускаем копирование:
rsync --delete -av --exclude='mnt/*' --exclude='media/*' / /mnt/user2/12-04_backup
 где: --delete - копирование с удалением каталогов, которых уже нет в оригинале (при первом создании backup'a сию опцию можно опустить),
-a - "всё включено" ) подробно здесь,
-v  - показывает в терминале все копируемые файлы,
--exclude - исключить из backup'a директорию; указываем её относительный путь, т. е. исключить /mnt/* - относительно копируемой корневой / будет mnt/* (dir/* - копирует только папку первого уровня (указанную dir), без вложенных в неё, dir/ - не копирует ни первой папки dir ни вложенных в неё),
/ - директория, с которой делаем backup (в данном случае корневая директория),
/mnt/user2/12-04_backup - директория на устройстве-получателе, в которую мы сохраняем backup.

Ещё опции rsync, которые могут понадобиться:
-x - не выходить за границы указанной файловой системы,
-z - при копировании сжимать данные.

Разные команды на заметку, не использовавшиеся:
Склеивание картинок:
convert * +append result.png
Присоединение обложки диска к тегам mp3:
eyeD3 --add-image file.jpg:FRONT_COVER music.mp3

Комментариев нет: