/usr/bin/lsb_release -ircd
# Узнать версию дистрибутива Linux;
uname -a # Показать версию ядра Linux;
uname -m # Отобразить архитектуру компьютера;
hostname # Показать сетевое имя компьютера;
uptime # Время работы системы без перезагрузки и выключения;
shutdown
# Выключение\перезагрузка. Примеры:
- shutdown -r now
# Перезагрузка;
- shutdown -h 20:00
# Выключить питание в 20:00;
- shutdown -h now
# Выключение;
init 0 # Выключение;
halt
# Выключение;
logout
# Выйти из системы;
# Показывает log-файл загрузки ОС;
cat /proc/cpuinfo
# Показать полную информацию о модели процессора (частота, поддерживаемые инструкции и т.д.);
cat /proc/meminfo
# Показать расширенную информацию о занимаемой оперативной памяти;
lshal
# Показать список всех устройств и их параметров;
lspci -tv
# Показать обнаруженные PCI-устройства;
lsusb -tv
# Показать обнаруженные USB-устройства;
lsmod
# Список всех модулей загруженных в ядро;
modprobe
# Загрузка модулей в ядро, пример:
# Пример смены root-окружения на /mnt: chroot /mnt
. После этого коневой раздел, примонтировнный к /mnt, будет использоваться как родной;
ldd
# Список библиотек, необходимых для конкретной программы. Вывести список библиотек, необходимых для работы ssh: ldd /usr/bin/ssh
;
whereis
# Показывает размещение бинарных файлов, исходных кодов и руководств, относящихся к конкретному файлу. Пример: whereis halt
;
crontab
# Обеспечивает возможность выполнения определённых задач по расписанию. Подробнее по ссылке cron
;
swapoff # Отключение swap-разделов. Отключаем swap (данные перемещаются в оперативную память): swapoff -a ;
swapon # Включение swap-разделов. Включаем swap: swapon -a ;
date # Просмотр и изменение даты\времени. Примеры:
- date # Показывает текущую дату и время;
- date 041217002007.00 # Установить системные дату и время. Формат: ММДДЧЧммГГГГ.СС;
Файловые операции
pwd
# Выводит текущий путь;
ls
# Выводит список файлов и каталогов. Пример вывода форматированного списка всех файлов и директорий, включая скрытые: ls -laX ;
cd
# Переход по директориям. Примеры:
- cd
# Переход в домашнюю директорию;
- cd /home
# Пример перехода в /home;
- cd ..
# Переход в директорию уровнем выше;
- cd ~user
# Перейти в домашнюю директорию пользователя user ;
touch
# Создание пустого файла если нет. Пример: touch test.txt
;
rm
# Удаление. Примеры:
- rm test.txt
# Удаление файла;
- rm -rf temp
# Удаление директории temp с вложенными файлами;
cp
# Копирование. Примеры:
- cp test.txt /home/test.txt
# Копирует test.txt из текущей директории в /home ;
- cp -la /dir1 /dir2
# Копирование директорий;
ln
# Cоздание символической ссылки. Пример: ln -s /var/test.txt /home/test.txt
- создать символическую ссылку к файлу /var/test.txt в директории /home;
mkdir
# Создание директории. Пример: mkdir temp
;
rmdir
# Удаление директории. Пример: rmdir temp
;
mv
# Перемещение\Переименование. Пример переименования директории: mv /dir1 /dir2
(аналогично с файлами);
locate
# Поиск. Пример поиска везде всех файлов с именем test.txt: locate test.txt
;
find
# Поиск. Примеры:
- find /home/it -name test.txt
# Найти файлы и директории с именем test.txt в /home/it и вложенных;
- find /home/it -name "*.txt"
# Найти все файлы и директории в /home/it и вложенных, имена которых оканчиваются на ".txt";
- find /usr/bin -type f -atime +100
# Найти все файлы в "/usr/bin", время последнего обращения к которым более 100 дней;
- find /usr/bin -type f -mtime -10
# Найти все файлы в "/usr/bin", созданные или изменённые в течении последних 10 дней;
stat
# Отображение всей доступной информации об указанном файле. Пример: stat test.txt
;
file
# Определяет тип файла. Пример: file test.txt
;
chmod
# Права доступа, подробнее по ссылке chmod
;
chown
# Меняет владельца файла, пример: chown www:www test.txt
;
mc
# Файловый менеджер
;
Архивация
tar
- архиватор. Примеры:
- tar cf test.tar /home/test.txt
# Создать tar-архив с именем test.tar содержащий /home/test.txt;
- tar czf test.tar.gz /home/test.txt
# Cоздать tar-архив с сжатием Gzip по имени test.tar.gz;
- tar cjf test.tar.bz2 /home/test.txt
# Cоздать tar-архив с сжатием Bzip2 по имени test.tar.bz;
- tar xf test.tar
# Распаковать архив test.tar в текущую папку;
- tar xzf test.tar.gz
# Распаковать tar-архив с Gzip;
- tar xjf test.tar.bz
# Распаковать tar-архив с Bzip2;
Управление процессами
top
# Диспетчер процессов;
ps
# Показывает процессы. Примеры:
- ps axjf # Просмотр всех работающих процессов;
- ps -eF
# Список процессов с полной строкой запуска;
- ps -U user
# Cписок задач, порожденных пользователем user;
pgrep
# Поиск процессов. Показать PID процесса sshd: pgrep -l sshd
;
lsof
# lsof /home
Показывает список процессов, которые используют /home;
fuser -m
# Узнать, какой процесс занял устройство. Пример: fuser -m /mnt
;
kill
# Убивает процесс. Примеры:
- kill 4712 «Убить» процесс с PID 4712:;
- kill -9 4712
# Принудительно завершает указанный процесс (выполнять если не помогает kill 4712
);
killall # Убивает процессы по имени. Примеры:
- killall x-www-browser # «Убить» процессы x-www-browser ;
- killall -u user
# Завершить процессы, порожденные пользователем user;
nice
# Позволяет отобразить или настроить приоритет задачи. Примеры:
- nice -4 mc # Запуск mc с приоритетом = текущий+4 ;
renice
# Изменение приоритета процесса. Примеры:
- renice 4 -p 11597
# Установить значение приоритета для процесса mc (PID=11597) равным 4;
Оперативная память
free
# Информация о состоянии памяти. free -m
- показать состояние оперативной памяти в мегабайтах;
dmidecode
# Информация о "железе". Информация о кол-ве разъемов оперативной памяти, и вставленных модулях: dmidecode --type 17
. Подробнее о dmidecode по ссылке dmidecode
;
Жесткий диск
du
# Информация о размере директории. du -sh /home/it/
выводит на экран размер директории /home/it/ ;
fdisk
# Информация о разделах жестких дисков. Информация о всех подключенных жестких и сменных дисках: fdisk -l
. Подробнее: fdisk
;
blkid
# Выводит UUID всех доступных накопителей информации в системе;
df
# Показывает размер свободного места на разделах. Пример: df -h
;
mount
# Монтирование. Примеры:
- mount
# Показывает полную информацию о примонтированных устройствах;
- mount /dev/sda1 /mnt
# Монтирует раздел /dev/sda1 к точке монтирования /mnt;
- umount /mnt
# Отмонтирует раздел от точки монтирования /mnt;
badblocks
# Проверка на бэд-блоки. badblocks -v /dev/sda1
проверить раздел sda1 на наличие bad-блоков;
fsck
# Проверка файловой системы. fsck /dev/sda1
- проверить/восстановить целостность linux-файловой системы раздела sda1;
mkfs
# Форматирование, подробнее по ссылке mkfs
;
smartctl
# Проверка SMART. smartctl -A /dev/hda
- контроль состояния жёсткого диска /dev/hda через SMART, подробнее по ссылке smart
;
hdparm
# Информация о жестких дисках, Примеры:
- hdparm -I /dev/sda
# Информация о диске /dev/sda ;
- hdparm -tT /dev/sda
# Показывает производительность жесткого диска;
Сеть
ping
# Пинг. Пропинговать ya.ru и вывести результат: ping ya.ru
;
ifconfig
# Утилита настройки сети. Примеры:
- ifconfig
# Показать параметры всех активных сетевых интерфейсов;
- ifconfig -a
# Показать все сетевые интерфейсы;
- ifconfig eth0 up
# Запустить сетевой интерфейс eth0;
- ifconfig eth0 down
# Отключить сетевой интерфейс eth0;
- ifconfig eth0 hw ether 00:01:02:03:04:05
# Смена MAC адреса;
- ifconfig eth0 192.168.1.1 netmask 255.255.255.0
# Выставить интерфейсу eth0 IP-адрес и маску подсети;
- ifconfig eth0:0 192.168.0.1 netmask 255.255.255.0
# Задать дополнительный IP адрес сетевому интерфейсу eth0;
iwlist scan
# просканировать эфир на предмет, доступности беспроводных точек доступа;
iwconfig
# Утилита настройки беспроводных сетевых интерфейсов.
- iwconfig wlan0
# Показать конфигурацию беспроводного сетевого интерфейса wlan0;
- iwconfig wlan0 mode ad-hoc
# Указываем тип сети - ad-hoc;
- iwconfig wlan0 channel 2
# Указываем частотный канал;
- iwconfig wlan0 essid inet
# Указываем имя сети. Подробнее о настройке раздачи интернета по wi-fi здесь: iwconfig
;
route
# Настройка маршрутов. Примеры:
- route -n
# Выводит на экран таблицу маршрутизации;
- route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1
# добавить статический маршрут в сеть 192.168.0.0/16 через шлюз с IP-адресом 192.168.1.1 (для удаления меняем add на del);
netstat
# Текущие сетевые соединения. Пример:
- netstat -tup # Отобразить активные сетевые соединения: ;
- netstat -an | grep LISTEN
# Показывает список всех открытых портов;
- netstat -anp -udp -tcp | grep LISTEN
# Посмотреть список приложений, которые открывают порты;
ethtool
# Информация о текущем режиме сетевого соединения и поддерживаемых. Примеры:
- ethtool eth0
отображает статистику интерфеса eth0 с выводом такой информации, как поддерживаемые и текущие режимы соединения;
- ethtool -s eth0 speed 100 duplex full autoneg off
# Принудительно задать скорость сетевому интерфейсу 100Mbit и режим Full duplex и отключить автоматическое определение;
tcpdump
# Утилита сканирования сетевого трафика. Пример: tcpdump tcp port 80
отобразить весь трафик на TCP-порт 80;
iptables
# Утилита настройки файервола;
ssh
# Подключение к удаленному компьютеру по ssh. Пример: ssh 10.10.10.4
. Подробнее: ssh
;
wget
# Утилита закачки. wget -c http://www.example.com/file.iso
загрузить файл http://www.example.com/file.iso с возможностью останова и продолжения в последствии;
whois # Узнать информацию о домене, пример: whois сайт ;
dig # Проверка доменных имён. Примеры по ссылке: dig ;
Текст
Печать
lpstat
# Просмотр списка принтеров. Получить список всех доступных принтеров lpstat -a
;
lp
# Команда отправки на печать. Подробнее:
;
lpr
# Команда отправки на печать. Пример: lpr -P Kyocera_Kyocera_FS-4020DN test.txt
;
lprm -
# Удаление очереди печати;
Пользователи и группы
id # Показывает сводную информацию по текущему пользователю (логин, UID, GID, группы);
adduser # Добавление нового пользователя. Пример добавления пользователя it: adduser it ;
passwd # Меняет пароль текущего пользователя;
groupadd # Добавление новой группы. Пример: groupadd ITgr ;
usermod # Изменения настроек пользователя. usermod -a -G ITgr it добавляет пользователя it в группу ITgr;
userdel # Удаление пользователя. Пример: userdel it ;
groupdel # Удаление группы. Пример: groupdel ITgr ;
users # Отображает краткий список пользователей работающих в системе в данный момент;
exit # Завершить сеанс текущего пользователя;
last # Отобразить регистрации пользователей в системе;
Разное
watch
# Каждые n-секунд команда watch запускает нужную комаду. Пример: watch -n 5 "cat /proc/loadavg"
Каждые пять секунд будет выводится результат команды просмотра средней загруженности компьютера;
screen
# Оконный менеджер. Подробнее по ссылке: screen
;
dc
# Калькулятор;
cal
# Календарь. Примеры:
- cal -3
# Покажет предыдущий, текущий и последующий месяц;
- cal 2015
# Календарь 2015-го года;
sleep
# Задержка на указанный промежуток времени, в примере 10 сек: sleep 10
;
history
# Показывает пронумерованный список команд, которые выполняли в этом и предыдущем сеансе;
script # Cоздать журнал своей консольной сессии. Сохраняется все что вводили, и все, что выдавалось на экран. Пример: script history.txt . Чтобы прекратить запись, введите exit ;
which # Отобразить полный путь исполняемого файла, например which ifconfig ;
wall # Вывести сообщение на все терминалы пользователей, пример: wall hello ;
reset # Сбросить настройки терминала и очистить его;
clear # Очищает экран терминала;
beep
# Воспроизвести звуковой сигнал;
Справка
man
# Справка;
man ls
# Справка по команде ls;
* Для некоторых команд нужны полные права;
** Для некоторых команд требуется установка дополнительного программного обеспечения.
Наступила пятница, а значит можно немного расслабиться. В этой подборке представлено 7 забавных (и не очень команд), которые можно выполнить в терминале Linux. Какие-то используются в качестве шутки, какие-то очень полезные.
cal — календарь в терминале
Команда cal выводит в терминале календарь.
Если выполнить ее без параметров, то выводится календарь на текущий месяц:
Можно указать год, тогда получим календарь на целый год:
sl — поезд в терминале
sl означает Steam Locomotive — паровоз. Команда была создана для тех, кто неправильно вводит команду ls (данная команда выводит список файлов).
По команде sl в терминале проезжает паровоз.
Установить в Ubuntu:
Sudo apt install sl
rev — все наоборот
Команда rev выводит все, что вы вводите в терминале, но наоборот (от слова rev erse):
figlet — надпись
Команда figlet выводит большими буквами надпись, которую вы ей указали. Надпись выводится ASCII символами.
Установка в Ubuntu:
Sudo apt install figlet
Figlet сайт
banner — баннер
Команда banner , так же как и figlet , выводит в терминале большими буквами символы, которые вы ей указали. Выводятся только первые 10 символов.
Установка в Ubuntu:
Sudo apt install sysvbanner
Banner Pingvinus
aafire — огонь в терминале
Команда aafire для тех, кто хочет увидеть огонь в своем терминале, ASCII огонь.
Установка в Ubuntu:
Sudo apt install libaa-bin
w — самая короткая команда
Команда w примечательна тем, что это самая короткая команда в Linux .
Команда w выводит информацию о пользователях, которые в данный момент используют систему.
Для каждого пользователя выводится его имя, информация о том, какую командую строку использует пользователь (оболочку), время регистрации в системе и время простоя и некоторые другие данные.
В первой строке, которую выводит команда w , показано текущее время, uptime (аптайм — время работы системы), количество пользователей, работающих в данный момент и среднее время загрузки системы (system load averages) за последние 1, 5 и 15 минут.
Почти все команды имеют дополнительные возможности. Чтобы получить дополнительную информацию о каждой команде, выполните в терминале
Вы можете считать себя новичком в Linux, но на самом деле это не так. Есть 3,74 миллиарда глобальных пользователей Интернета, и все они в некотором роде, используют Linux так как серверы Linux поддерживают 90% интернета. Большинство современных маршрутизаторов запускают Linux или Unix, а супер компьютеры также в большинстве своем работают на Linux. Если у вас есть Android-смартфон, ваша операционная система построена на ядре Linux.
Другими словами, Linux повсюду.
Изображение: Opensource.com
Но есть разница между использованием Linux-технологий и использованием самой Linux. Если вы заинтересованы в Linux, вам может быть интересно узнать, как использовать интерфейс командной строки Linux (CLI)
Ниже приведены основные команды Linux, которые всем нужно знать. Каждая из них проста и легко запоминается. Другими словами, вам не обязательно быть продвинутым пользователем, чтобы понять их.
Начните осваивать интерфейс командной строки Linux с помощью этих 10 основных команд.
1. ls
Нет, это не типографская ошибка - я действительно намеревался ввести нижний регистр буквы L. ls , или «list» - это команда номер один, которую вам нужно знать для использования CLI Linux. Эта команда списка функционирует в терминале Linux, чтобы отобразить все основные каталоги, поданные в соответствующей файловой системе. Например, эта команда:
ls /applications
показывает каждую папку, хранящуюся в папке приложений. Вы будете использовать его для просмотра файлов, папок и каталогов.
Все скрытые файлы можно просмотреть с помощью команды ls -a
2. cd
Эта команда используется для перехода (или «изменения») в каталог. Это то, как вы перемещаетесь из одной папки в другую. Скажите, что вы находитесь в папке «Загружаемые файлы», но вы хотите перейти в папку «Список воспроизведения Gym».
Просто ввод текста cd Gym Playlist не будет работать, поскольку оболочка не узнает его и сообщит, что папка, которую вы ищете, не существует. Чтобы открыть эту папку, вам нужно поставить обратную косую черту.
Команда должна выглядеть так:
cd Gym\ Playlist
Чтобы вернуться из текущей папки в предыдущую, вы можете ввести имя папки, за которой следует cd ... Подумайте о двух точках, подобных кнопке «Назад».
3. mv
Эта команда передает файл из одной папки в другую; mv означает «двигаться». Вы можете использовать эту короткую команду, как если бы вы перетащили файл в папку на ПК с Windows.
Например, если я создаю файл, призванный testfile продемонстрировать все основные команды Linux, и я хочу переместить его в папку «Мои документы», я бы выпустил эту команду:
mv /home/sam/testfile /home/sam/Documents/
Первая часть команды (mv ) говорит, что я хочу переместить файл, вторая часть (home/sam/testfile ) называет файл, который я хочу переместить, а третья часть (/home/sam/Documents/ ) указывает местоположение, куда я хочу передать файл.
4. Горячие клавиши Linux
Это больше, чем одна команда, но я не мог удержаться, и не рассказать про них здесь. Зачем? Потому что они экономят время и сильно помогают в работе.
CTRL+K Вырезает текст с курсора до конца строки
CTRL+Y Вставить текст
CTRL+E Перемещает курсор в конец строки
CTRL+A Перемещает курсор в начало строки
ALT+F Переход к следующему пространству
ALT+B Переход к предыдущему пространству
ALT+Backspace Удаляет предыдущее слово
CTRL+W Обрезает слово за курсором
Shift+Insert Вставляет текст в терминал
Ctrl+D Выходит из системы
Эти команды используются разными способами. Например, представьте, что вы неправильно заметили слово в тексте команды:
sudo apt-get intall programname
Вероятно, вы заметили, что «install » написана с ошибкой, поэтому команда не будет работать. Но быстрые клавиши позволяют легко вернуться и исправить. Если мой курсор находится в конце строки, я могу щелкнуть ALT+B дважды, чтобы переместить курсор на место, указанное ниже, с помощью ^ символа:
sudo apt-get^intall programname
Теперь мы можем быстро добавить письмо sдля исправления install . Очень просто!
5. mkdir
Это команда, которую надо использовать для создания каталога или папки в среде Linux. Например, вы можете ввести mkdir DIY в каталог для своих проектов DIY.
6. at
Если вы хотите запустить команду Linux в определенное время, вы можете добавить at к уравнению.
За синтаксисом at следует дата и время, в которые вы хотите выполнить команду. Затем будет изменено командное приглашение, at> чтобы вы могли ввести команду или команды, которые хотите запустить, в указанное вами время
Например:
at 4:08 PM Sat
at> cowsay "hello"
Это будет запускать программу cowsay в 16:08 в субботу.
7. rmdir
Эта команда позволяет удалить каталог через CLI Linux.
Например:
rmdir testdirectory
Имейте в виду, что эта команда не удалит каталог, в котором есть файлы внутри. Это работает только при удалении пустых каталогов.
8. rm
Если вы хотите удалить файлы, rm команда - это то, что необходимо. Она может удалять файлы и каталоги.
Чтобы удалить один файл, введите rm testfile
для удаления каталога и файлов внутри него, введите rm -r .
9. touch
Команда touch , иначе известная как команда make file , позволяет создавать новые, пустые файлы с помощью CLI Linux. Очень похоже на команду mkdir для создания каталогов, touch применяется для создание файлов.
Например, touch testfile создаст пустой файл с именем testfile.
10. locate
Эта команда используется для поиска файла в системе Linux. Похоже на поиск в Windows. Это очень полезно, если вы забудете, где вы сохранили файл или как вы его назвали.
Например, если у вас есть документ о вариантах использования цепочки блоков, но вы не можете придумать название, вы можете нажать на него locate -blockchain или вы можете искать «варианты использования цепочки», разделив слова звездочкой или звездочками (*).
Например:
locate -i*blockchain*use*cases* ,
Есть много других полезных команд CLI Linux, таких как pkill команда, и это здорово, если вы начнете понимать, что они делают.
Вот ещё некоторые другие полезные команды для людей, которые хотят научиться использовать терминал Linux: man, apropos, sudo, su, chown, chmod, find, xargs, grep, sed, mount, less, stat
Но 10 этих простых и полезных команд, являются необходимыми для начала работы с использованием командной строки Linux.
По аналогии с ОС Windows, в Линуксе присутствует определенный набор команд для наиболее удобной и быстрой работы в операционной системе. Но если в первом случае мы вызываем утилиту или выполняем действие из «Командной строки» (cmd), то во второй системе действия производятся в эмуляторе терминала. По сути, «Терминал» и «Командная строка» — это одно и то же.
Для тех, кто недавно начал знакомство с линейкой операционных систем семейства Linux, приведем ниже реестр наиболее значимых команд, которые необходимы каждому пользователю. Заметим, что инструменты и утилиты, вызываемые из «Терминала» , являются предустановленными во всех дистрибутивах Linux и не нуждаются в предварительной загрузке.
Управление файлами
В любой операционной системе не обойтись без взаимодействия с различными форматами файлов. Большинство пользователей привыкло для этих целей использовать файловый менеджер, который имеет графическую оболочку. Но все те же манипуляции, а то и больший их перечень, можно провести, используя специальные команды.
Работа с текстом
Вводя в «Терминал» команды, которые непосредственно взаимодействуют с файлами, рано или поздно понадобится вносить правки в них. Для работы с текстовыми документами используются следующие команды:
Управление процессами
Длительное использование ОС в течение одного сеанса стимулирует появление множества активных процессов, которые способны в значительной мере ухудшить производительность компьютера вплоть до того, что за ним будет не комфортно работать.
Данную ситуацию легко можно исправить, завершая ненужные процессы. В системе Linux в этих целях применяют следующие команды:
Окружение пользователя
В число важных команд входят не только те, что позволяют взаимодействовать с системными компонентами, но и выполняющие более тривиальные задачи, способствующие удобству при работе за компьютером.
Управление пользователями
Когда за одним компьютером работает не один человек, а несколько, то лучшим вариантом будет создание нескольких пользователей. Однако необходимо знать команды для взаимодействия с каждым из них.
Просмотр документов
Ни один пользователь не способен запомнить значение всех команд в системе или расположение всех исполняемых файлов программы, однако на помощь могут прийти три легко запоминающиеся команды:
Управление сетью
Чтобы настроить интернет и в дальнейшем успешно вносить коррективы в сетевые параметры, необходимо знать хотя бы несколько отвечающих за это команд.
Заключение
Зная все вышеперечисленные команды, даже новичок, который только установил себе систему на базе Linux, сможет отлично взаимодействовать с ней, успешно решая поставленные задачи. На первый взгляд может показаться, что список очень трудно запомнить, однако при частом выполнении той или иной команды со временем основные врежутся в память, и обращаться каждый раз к представленной нами инструкции не понадобится.
В Linux, команды терминала могут использоваться почти для решения всех задач. Но кроме серьезных команд, предназначенных для выполнения определенных действий, в этой системе есть и шуточные команды. Это в первую очередь различная терминальная графика, баннеры, вывод случайных фраз или заставки. Большинство утилит нужно отдельно устанавливать, но некоторые поставляются по умолчанию, по крайней мере, в Ubuntu.
В этой статье накануне праздников мы рассмотрим прикольные команды Linux. Но перед тем как перейти к командам, давайте начнем с самого терминала.
Недавно появился на свет проект эмулятора терминала в виде старого экрана. Смотрится очень даже неплохо:
Для установки в Ubuntu можно использовать репозиторий PPA:
sudo add-apt-repository ppa:noobslab/apps
$ sudo apt-get update
$ sudo apt-get install cool-retro-term
В OpenSUSE пакет доступен в software.opensuse.org. После завершения установки запустить программу можно командой:
Может и для постоянной работы он не подходит, но для шуток и отдыха в самый раз, к тому же очень напоминает терминал компьютеров в Fallout.
Терминал у нас подходящий, теперь можно и посмотреть существующие шутки в терминале Linux.
1. Cowsay
Эта утилита относится к консольной графике. Вы вызываете утилиту с нужным сообщением, а она выводит его, в виде комикса с животным:
Очень удобно использовать для приветствия терминала. Установить программу можно из официальных репозиториев Ubuntu командой:
sudo apt-get install cowsay
Если вам не нравятся коровы, можно использовать любое другое животное, список возможных вариантов выводится командой:
Cow files in /usr/share/cowsay/cows:
apt beavis.zen bong bud-frogs bunny calvin cheese cock cower daemon default
dragon dragon-and-cow duck elephant elephant-in-snake eyes flaming-sheep
ghostbusters gnu head-in hellokitty kiss kitty koala kosh luke-koala
mech-and-cow meow milk moofasa moose mutilated pony pony-smaller ren sheep
skeleton snowman sodomized-sheep stegosaurus stimpy suse three-eyes turkey
turtle tux unipony unipony-smaller vader vader-koala www
Затем, чтобы выбрать вариант используйте опцию -f. Например:
cowsay -f dragon "Привет мир!"
Поддерживаются также и другие опции, для изменения поведения программы, смотрите справку man.
2. Cowthink
Программа, очень похожая на первую Оказывается, коровы могут не только разговаривать, но и думать. Она устанавливается вместе с cowsay, поэтому ничего дополнительно ставить не нужно:
cowthink "Я все-таки дочитаю эту статью до конца"
cowthink -f dragon "Сейчас все сожгу"
Поддерживаются те же опции.
3. sl
Если вы неверно введете команду ls, вместо нее напишете sl - то в терминале справа налево проедет паровоз. Для установки в Ubuntu наберите:
sudo apt-get install sl
А теперь:
Опция -F заставит поезд взлетать, а -l уменьшит его до размера баннера.
4. figlet
Утилита позволяет рисовать большие текстовые баннеры в терминале. Такие баннеры используются в приветствиях ssh или telnet серверов:
Если не установлена, используйте в Ubuntu:
sudo apt-get install figlet
Поддерживаются разные шрифты, но нет поддержки юникода:
figlet -f slant Hello
5. toilet
И снова баннеры. Эта команда очень похожа на предыдущую, здесь для рисования баннеров используются символы:
Установка такая же:
sudo apt-get install toilet
Команда toilet поддерживает намного больше возможностей, например здесь есть поддержка Unicode, цветные шрифты (-f), фильтры(-F) и т д.
Например:
toilet -f bigmono9 -F gay "Hello"
6. banner
Эта команда, как и две предыдущие печатает баннеры, но ее возможности очень ограничены, нет опций и печатает только 10 символов:
Установка в Ubuntu:
sudo apt-get install sysvbanner
7. fortune
Команда fortune выводит одну случайную, но возможно полезную цитату:
Опция s указывает утилите генерировать цитаты небольшого размера.
Для вывода цитаты можно использовать cowsay:
fortune | cowsay
Установка в Ubuntu:
sudo apt-get install fortune
Для установки русских цитат выполните:
sudo apt-get install fortunes fortune-mod fortunes-min fortunes-ru
8. cmatrix
Программа нарисует матрицу, такую же как в одноименном фильме в вашем терминале:
Для установки в Ubuntu выполните:
sudo apt-get install cmatrix
9. Rev
Команда будет переворачивать слова и предложения задом наперед, просто выполните команду, а затем начинайте набирать текст:
10. Пасхалка в apt-get
Пасхалки в Linux довольно редкое явление, но они есть. В команде apt-get есть такое пасхальное яйцо:
11. Пасхалка aptitude
В aptitude тоже есть эта пасхалка, но активируется она не сразу:
Вы можете смотреть звездные войны в терминале подключившись к серверу towel.blinkenlights.nl с помощью telnet:
telnet towel.blinkenlights.nl
Если вам доступен только терминал и нужно еще долго ждать, можно немного посмотреть звездные войны.
13. Цикл yes
Команда будет продолжать печатать указанное слово бесконечно, пока вы не нажмете Ctrl + C. В большинстве случаев от нее нет никакой пользы, но она может пригодиться при тестировании программ, когда нужно сгенерировать большое количество текстовой информации:
14. factor
Эта команда выведет все наименьшие общие кратные для указанного числа, например:
15. pi
Команда pi выведет число pi до нужного количества знаков, например, посмотрим первые 500 знаков после запятой:
Команды factor и pi не относятся к категории веселые команды linux, но могут быть очень полезными в некоторых ситуациях.
16. xcowsay
xcowsay - это графический интерфейс для команды cowsay, для ее запуска вам будет нужен запущенный Х сервер. Программа не будет работать только в терминале:
xcowsay "Привет!"
Для установки в Ubuntu используйте:
sudo apt-get install xcowsay
17. xeyes
Программа xeyes рисует пару глаз на рабочем столе. Они следуют за курсором мыши, и таким образом вы точно не потеряете курсор.
Затем выполните:
18. asciiviewer
Программа aciiviewer позволяет просматривать изображения в терминале в текстовом формате. Может быть полезной, когда нет другой возможности открыть изображение.
Сначала ее нужно установить:
sudo apt-get install aview
Затем проверяем:
asciiview test.png -driver curses
Конечно, в оригинале картинка выглядит намного лучше, но и здесь можно что-то разобрать.
19. aafire
Любите смотреть на огонь? Не проблема, эта команда тоже относится к набору asciiart и с помощью нее можно зажечь огонь в терминале:
Установка:
sudo apt-get install caca-utils
20. bb
Это аудио-визуализация отличного качества, работающая в текстовом терминале. В анимации используется только текст, но кроме рисунка есть и фон. За ней очень интересно наблюдать:
Установка:
sudo apt-get install bb
21. rig
Программа генерирует случайные и скорее всего, фейковые идентификационные данные:
Alberta Ramirez
990 Brandy Run
Chicago, IL 60607
(312) xxx-xxxx
Установить программу можно командой:
sudo apt-get install rig
22. thefuck
Это не совсем обычная утилита, хотя она и судя по названию была сделана в шутку, но может быть полезной. Утилита анализирует предыдущую команду и пытается исправить допущенную в ней ошибку. Смотрите демонстрацию от самого автора:
Для того чтобы установить программу можно загрузить ее из GitHub:
wget -O - https://raw.githubusercontent.com/nvbn/thefuck/master/install.sh | sh - && $0
Выводы
Вот и все. Если вы знаете другие веселые, смешные или прикольные команды linux которые я упустил - напишите в комментариях!