Скрытые возможности Linux
Следуя в духе скрытых возможностей PowerShell и других разнообразных возможностей переполнения стека, какие команды Linux или комбинации команд вы считаете необходимыми в своей работе?
Также см:
Скрытые возможности MySQL
Скрытые возможности PowerShell
Скрытые возможности Oracle Database
Скрытые возможности Windows 2008
Скрытые возможности Solaris/OpenSolaris
Скрытые возможности SQL Server
Скрытые возможности IIS (6.0 / 7.0)
54 ответа
tee
является удивительным. Вывод на экран и в лог-файл? Проверьте.
Обычно люди запускают свои настольные системы с X. Но вы обычно можете получить доступ к настоящему текстовому терминалу, некоторые из них на самом деле. Это так называемые виртуальные консоли. Затем вы можете войти в систему и использовать командную строку и т. Д.
Просто нажмите Ctrl + Alt + F1, Ctrl + Alt + F2 и т. Д. Ваш X-сервер обычно работает на Ctrl + Alt + F7.
Это, конечно, зависит от распределения и конфигурации.
Также иногда полезна эта команда для уничтожения X-сервера: Ctrl + Alt + Backspace.
Эти комбинации клавиш работают, по крайней мере, на компьютерах i86.
История bash - у меня обычно работает 10 или около того xterms. Вот соответствующая часть моего профиля:
# Make history ignore dups, ls, and exit
export HISTIGNORE="&:ls:[bf]g:exit"
# Save 100000 history comamnds
export HISTSIZE=10000
# Make each terminal use a separate history file
HISTDIR=${HOME}/.history
SHELLID=$(tty | sed 's!/!.!g')
HISTFILE=${HISTDIR}/history${SHELLID}
touch ${HISTFILE}
# load last histfile as current history
history -r $(/bin/ls ${HISTDIR}/history${SHELLID} | /usr/bin/tail -n 1)
Если мне нужно найти команду, я могу просто просмотреть каталог своей истории.
aespipe - читает из стандартного ввода и пишет в стандартный вывод. Его можно использовать для создания и восстановления зашифрованных архивов tar или cpio.
logger
позволяет писать сообщения в системный журнал из командной строки или скрипта.
logger "See? There! It happened again!"
Найти
например:
находить. -iname *20080[123456].log -a! -iname *.bz2 -exec bzip2 \{\} \;
Я не уверен, что я просто показываю свое невежество, но я только что узнал о "последней" команде для проверки, кто входил в систему. Это очень полезно.
Еще одна хорошая программа - "ожидай". Я очень легко автоматизирую любые входы в систему через ssh/telnet или все, что вынуждает вас вносить вклад в программу.
Пост, который я сделал на Stack Overflow: Как перечислить только подкаталоги в текущем?
ls -d */
Это простой трюк, но вы не знаете, сколько мне нужно времени, чтобы найти его!
fgrep
например, fgrep -r * --include=*.rb
просматривает структуру dir из текущего каталога, ища в исходных файлах ruby
и гораздо проще в использовании, чем найти
scp
Я веб-разработчик, и наша разработка требует, чтобы я постоянно отправлял файлы на наш сервер разработки. Я написал быструю обёртку вокруг scp, чтобы справиться с этим для меня.
NX сочетает в себе некоторые преимущества screen и ssh -X с умным сжатием. Теперь я могу удаленно запускать gnumeric через модемное соединение и возобновлять его, когда соединение умирает.
lsof -i - list all opened socket
htop - like top, but with more eye candy
rdiff-backup - for incremental backup
mc - midnight commander
ethstatus - ethernet statistics
netstat, nmap
iftop - display bandwidth usage on an interface by host
Возможности POSIX и возможности файлов POSIX
dd
- конвертировать и копировать файлы
Я использую это очень часто, чтобы сделать копии DVD или HDD Patitions, которые мне нужно сделать резервную копию.
dd if=/dev/sda2 of=/tmp/copy_of_sda2
это очень удобно и настраиваемо, просто посмотрите на его справочную страницу
Мои топ-5 "скрытых" функций (надеюсь, их здесь нет)
cd -
попробуйте:)- именованные каналы используются недостаточно, и вы можете делать с ними действительно классные вещи
- системное нажатие, хотя я не очень хорош в этом, и вам действительно нужно знать ваше ядро, оно обладает невероятной мощностью для правильного пользователя.
- Сочетание передачи списка в
sort
затемuniq -c
а затемsort -n
действительно может творить чудеса. Вы можете использовать это, чтобы вывести своих лучших собеседников из файла журнала Apache или из памятиps -o
, proc/sys
Интерфейс / файловая система. Там столько всего, что вы можете настроить / просмотреть в режиме реального времени. Упаковкаcat
или жеgrep
утверждения вwatch -d -n 0.1
это здорово и очень удобно.
Знаменитости dd
, netcat
, screen
, tcpdump
а также find
но большинство уже упоминалось.
Мощность и гибкость SSH не перестают меня удивлять. Также возможность сделать массив raid из чего угодно (дискеты, кто-нибудь?), Все доступные файловые системы, классные вещи, такие как LVM, инструменты шифрования, возможность создавать свои собственные инструменты с множеством компиляторов, интерпретаторов, языков... О, и не забывайте устанавливать новые вещи с помощью apt-get или подобного.
Это просто намного лучше, чем окна.
Я нахожу, где и какие команды удобно. Используйте их, если у вас есть альтернативные версии одного и того же приложения с тем же именем и вы хотите использовать конкретную из них.
За "скрытую" функцию, которую чаще всего упускают из виду или упускают пользователи, не знакомые с Linux (/Unix).
man man
man -k <blah>
или жеapropos <blah>
"Скрытые" функции
ctrl + r: поиск в истории последней команды с указанными вами буквами
Никогда не использовал script(1) для сохранения терминальной сессии?
apg (1) для создания случайных паролей
Вы хотите знать, сколько у вас процессоров / ядер? NPROC (1)
sfdisk (8) отличный инструмент для работы с разделами
multitail(1) несколько хвостов одновременно... отличный инструмент
Посмотрим...
Я использую цветовые коды bash в моем /root/.bash_profile, чтобы моя корневая подсказка bash отличалась от моей обычной не-root стандартной пользовательской подсказки. Еще одно напоминание о том, что я нахожусь в одной команде от разрушения всей системы.;)
Я часто использую nc (netcat) для тестирования. Хорошая утилита с большой универсальностью.
Долгое время я никогда не знал, что chown может принимать и имя пользователя, и имя группы вместе в качестве аргумента, то есть:
chown user:group -R /some/directory
, Этот факт спас меня от печатания (больше нет пар chown / chgrp).Команда df - это быстрый способ увидеть все ваши смонтированные файловые системы.
Я часто использую pgrep в сценариях, чтобы увидеть, запущен ли процесс.
kexec довольно аккуратный, позволяет перезагрузиться без прохождения BIOS, что значительно сокращает время перезагрузки. Не слишком много перезагружайся, хотя...
find
мой самый большой инструмент Я использую его для поиска объектов и выполнения команд для найденных файлов или каталогов.
Ни одна система не обходится без ssh
тоже.
- человек (помогает по большинству команд)
- меньше (разумный просмотр)
- tail -f (просмотреть добавленные данные файла по мере его роста)
- смотреть (запускать программу и периодически просматривать ее вывод на весь экран)
Для меня самой большой особенностью является то, что на самом деле ничто не является "скрытым" - все это прямо у вас под глазами, если вы потрудитесь прочитать документацию или код.
Я просто не могу обойтись без этих команд
- ps -fA (список всех запущенных программ
- lsof (список открытых файлов на процесс)
- пуш. (вставить текущий каталог в стек каталогов)
- попд (вытолкнуть текущий каталог из стека каталогов)
- домашний каталог локальной учетной записи ~/ вы также можете получить доступ к пользовательскому каталогу, например ~username.
- замените текущий профиль bash после внесения изменений без повторного входа в систему. ". ~/.bashrc
- grep -inR (рекурсивный grep, i = без учета регистра, n = показывать как число, R = рекурсивно)