Переводы — 30 полезных команд в Linux
Оригинал
Эта коллекция содержит те команды, которые я выучил за годы работы в Linux. Разумеется, автор не я. Просто я находил их на различных ресурсах, изменял их, часть составлял сам, читая книги и страницы man.
Отмазка: пробуйте все эти команды на не-production серверах, некоторые из них могут что-то сломать.
Есть несколько вариантов сделать это. Например:
И снова - есть много вариантов это сделать:
Замените cp на любую желаемую команду, man-страницу которой вы хотите посмотреть.
Историю сохрания команд надо настроить, иначе не работает. Больше информации по ссылке.
Результат будет выглядеть как-то так:
или
Эта команда создаст 1Gb диск в памяти, который можно использовать для быстрого доступа к файлам в нем. Главное - не забывайте, что это RAM-диск, и его содержимое будет удалено при перезагрузке.
Вы можете вызывать команды из истории по их номеру:
Затем используйте номер для вызова команды:
или по первым буквам:
Этот последний метод несколько опасен, так как вы не знаете, какие аргументы и опции команда будет использовать, поэтому вы можете приостановить команду. Это будет безопаснее:
Это покажет команду, но не выполнит ее. Если она вас устраивает - удалите :p, и она запустится, но на этот раз вы будете знать, что вы делаете.
Дополнительная информация по ссылке.
Дополнительная информация по ссылке.
с 16 символами. Если вам нужно 8:
Дополнительная информация по ссылке.
Вывод:
Дополнительная информация по ссылке.
Дополнительная информация по ссылке.
(или
- прим. пер.)
Дополнительная информация по ссылке.
Эта коллекция содержит те команды, которые я выучил за годы работы в Linux. Разумеется, автор не я. Просто я находил их на различных ресурсах, изменял их, часть составлял сам, читая книги и страницы man.
Отмазка: пробуйте все эти команды на не-production серверах, некоторые из них могут что-то сломать.
1. Удаление конфигурационных файлов от деинсталлированных программ в Debian
Есть несколько вариантов сделать это. Например:
sudo aptitude purge '~c'
sudo dpkg -l | awk '/^rc/ {print $2}' | xargs dpkg -P
2. Сборка фильма из файлов jpg
mencoder "mf://*.jpg" -mf fps=10 -o test.avi -ovc lavc -lavcopts vcodec=msmpeg4v2:vbitrate=800
3. Очистка содержимого файла
И снова - есть много вариантов это сделать:
:> file
truncate -s0 file
4. Поиск дубликатов файлов на основании размера и MD5-хеша
find -not -empty -type f -printf "%s\n" | sort -rn | uniq -d | xargs -I{} -n1 find -type f -size {}c -print0 | xargs -0 md5sum | sort | uniq -w32 --all-repeated=separate
5. Заменить пробелы в имени файлов на подчеркивания
1 2 3 4 5 |
#!/bin/bash |
6. Конвертирование man-страницы в текстовый файл
man cp | col -b > /tmp/man-cp.txt
Замените cp на любую желаемую команду, man-страницу которой вы хотите посмотреть.
7. Список наиболее используемых команд из истории
history | awk '{print $2}' | sort | uniq -c | sort -rn | head
8. Выполнение команды без сохранения ее в истории
[пробел]command
Историю сохрания команд надо настроить, иначе не работает. Больше информации по ссылке.
9. Добавить часы к приглашению командной строки
export PS1="${PS1%\\\$*}"' \t \$ '
Результат будет выглядеть как-то так:
[ggarron@arch ~] 16:13:14 $
10. Принудительная проверка файловой системы
sudo touch /forcefsck
или
sudo shutdown -rF now
11. Создание и монтирование RAM-диска
mount -t tmpfs tmpfs /mnt -o size=1024m
Эта команда создаст 1Gb диск в памяти, который можно использовать для быстрого доступа к файлам в нем. Главное - не забывайте, что это RAM-диск, и его содержимое будет удалено при перезагрузке.
12. Вызов команд из истории
Вы можете вызывать команды из истории по их номеру:
1 2 3 4 5 6 7 8 |
$ history |
Затем используйте номер для вызова команды:
!963
или по первым буквам:
!df
Этот последний метод несколько опасен, так как вы не знаете, какие аргументы и опции команда будет использовать, поэтому вы можете приостановить команду. Это будет безопаснее:
!df:p
Это покажет команду, но не выполнит ее. Если она вас устраивает - удалите :p, и она запустится, но на этот раз вы будете знать, что вы делаете.
13. Подсчет строк и слов в документе
wc -l -w mytextfile.txt
14. Монтирование удаленной файловой системы через ssh
sshfs remote-user@remote.server:/remote/directory /mnt/remote-fs/
Дополнительная информация по ссылке.
15. Копирование своего публичного ssh ключа на сервер для доступа к нему без пароля
cat ~/.ssh/id_rsa.pub | ssh user@remote.machine "mkdir ~/.ssh; cat >> ~/.ssh/authorized_keys"
Дополнительная информация по ссылке.
16. Генерация случайных паролей
dd if=/dev/urandom bs=16 count=1 2>/dev/null | base64
с 16 символами. Если вам нужно 8:
dd if=/dev/urandom bs=8 count=1 2>/dev/null | base64
17. Пост в твиттер из командной строки
curl --basic --user "user:pass" --data-ascii "status=Arriving the office" "http://twitter.com/statuses/update.json"
18. Замена слов с использованием sed
sed -i 's/OLD/NEW/g' FILE
Дополнительная информация по ссылке.
19. Список типов активных сетевых соединений и количество соответствующих соединений
netstat -ant | awk '{print $NF}' | grep -vE '[:upper:]'| sort | uniq -c | sort -rn
Вывод:
1 2 3 4 |
35 TIME_WAIT |
20. Монтирование образа ISO
mount -t iso9660 -o loop file.iso /media/disk
21. Сброс настроек терминала, если ему "поплохело"
reset
22. Список процессов с установленными сетевыми соединениями
lsof -i -n | grep ESTABLISHED
Дополнительная информация по ссылке.
23. Резервное копирование диска или раздела
dd if=/dev/sda of=~/backup-disk-YY-MM-DD.img
Дополнительная информация по ссылке.
24. Запуск простого HTTP-сервера для расшаривания файлов
python -m SimpleHTTPServer
25. Смена раскладки клавиатуры на лету
setxkbmap -layout us
26. Чтение сжатого файла на лету, без разархивирования
zcat file.gz
(или
lesspipe file.gz
27. Сохранение web-страницы как текста с помощью lynx
lynx -dump http://www.go2linux.org > $HOME/go2linux.txt
28. Определение типа файла
file *
29. Запуск команд, которые продолжают работу после закрытия сессии или терминала
nohup nice -n 4 [command] > output.txt &
Дополнительная информация по ссылке.
30. Пересоздание меню fluxbox
fluxbox-generate_menu