развернуть
посмотреть видеоmplayer -vo fbdev2 -zoom -x 1024 -y 600 -fs /адрес/имя_файла.avi
mpv -vo drm rtmp://сайт_с_раздачей/
mpv -vo drm
http://78.29.1.71/live/2x2tv/copy/playlist.m3u8 youtube-dl
https://www.youtube.com/watch?v=6pxRHBw-k8M --list-formats
mpv -vo drm
https://www.youtube.com/watch?v=6pxRHBw-k8M --ytdl-format=22
echo "mpv -vo drm
https://www.youtube.com/watch?v=6pxRHBw-k8M --ytdl-format=22" > /dev/tty2
ссылки на видео ffplay film.avi
https://help.ubuntu.ru/wiki/ffmpegзапись в файл
ffmpeg -f fbdev -r 10 -i /dev/fb0 out.avi
скачать потоковое видео
ffmpeg -i
https://example.org/stream.m3u8 -c copy out.ts
записать и прослушать аудио
arecord audio.wav
aplay audio.wav
прослушать радио
curseradio
mpg123
http://strm112.1.fm/90s_mobile_mp3mocp
http://ic2.101.ru:8000/a183ffplay
http://ic2.101.ru:8000/a70mpv
http://strm112.1.fm/ccountry_mobile_mp3 ссылки на радио музон в консоли
в ubuntu и debian
sudo apt-get install pulseaudio
sudo apt-get install libpulse-dev
sudo apt-get install osspd
wget -qO -
http://radio.goha.ru:8000/grindfm.ogg |ffmpeg -i - -f u8 -ac 1 -ar 8000 -> /dev/dsp
sudo apt-get install sox libsox-fmt-all
wget -qO -
http://radio.goha.ru:8000/grindfm.ogg |play -t ogg -
во фряхе
# virtual_oss -S -Q 0 -b 16 -c 2 -r 44100 -s 100ms -f /dev/dsp -d dsp.44100 -t vdsp.ctl
% fetch -o -
http://radio.goha.ru:8000/grindfm.ogg |oggdec -R -e 1 -b 16 -s 1 - -o - > /dev/dsp.44100
http://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi?az=post&om=118115&forum=vsluhforumID3&omm=24&news_key=51258 посмотреть картинку
fim -A /адрес/имя_файла.png
прочесть pdffimgs /адрес/имя_файла.pdf
jfbview /адрес/имя_файла.pdf
pip3 install epy-reader
epy книга.mobi
интернет с картинками
w3m адрес_сайта
пакет w3m-img должен быть установлен
links2 -g адрес_сайта
apt install netsurf-fb
прочесть документы
antiword file.doc | less
odt2txt file.odt | less
глянуть погоду
curl
http://wttr.in/ посмотреть звёздные войны
telnet towel.blinkenlights.nl
когда надоест Ctrl + ] и затем q
интернет
w3m elinks links2
https://github.com/browsh-org/browshdocker run --rm -it browsh/browsh
https://github.com/fathyb/carbonyldocker run -ti fathyb/carbonyl
https://duckduckgo.com скриншоты в иксах и консоли, запись терминальной сессии, разрешение экрана в ttyfbset -xres 1280 -yres 1024 -depth 32
fbset -xres 1920 -yres 1080 -depth 32
fbset -xres 1600 -yres 900 -depth 32
fbgrab -c 2 2.png #(снимок tty2)
sudo fbgrab -c 2 -s 5 2.png # снимок tty2 через 5 сек
tlog-rec --writer=file --file-path=tlog.log
tlog-play --reader=file --file-path=tlog.log
получить ссылки и картинки с сайта
http://www.videlibri.de/xidel.htmlадреса ссылок:
xidel -s --extract "//a/@href" "
http://www.videlibri.de/xidel.html"
адреса изображений:
xidel -s --extract "//img/@src" "
http://www.videlibri.de/xidel.html"
локаль
echo 'export LANG=en_US.utf8' >> ~/.profile
source ~/.profile
QT во фреймбуфере
sudo gpasswd -a пользователь input # права на мышку и клаву для qt
QT_QPA_PLATFORM=linuxfb программа_на_qt # запуск qt программ, в tty
QT_QPA_PLATFORM=linuxfb qutebrowser
https://raw.githubusercontent.com/qutebrowser/qutebrowser/master/doc/img/cheatsheet-big.pngв этом режиме работают только хоткеи программы, переключения на другую tty нет
Как закрыть терминал без убийства запущенной в нём командыnohup команда &
или
команда & disown
строка bash
Поднятая целина: Осваиваем и обустраиваем консоль - «Хакер» Разноцветные терминалы командная строка в стиле DOS Пользовательские настройки Bash export PS1='\t C:\> '
или так
export PS1="C:\$( pwd | sed 's:/:\\\\\:g' )> "
если понравилось добавим в ~/.bashrc следующий код:
PS1="C:\$( pwd | sed 's:/:\\\\\:g' )> "
цветной текст
echo -e '\033[0;31mнекоторый текст\033[0m'
опции
Ёлочка в командной строке 0 Сбросить все атрибуты
1 Bright (повышенная яркость)
2 Dim (затемнение)
4 Underscore (нижнее подчеркивание)
5 Blink (мигание)
7 Reverse (инверсия)
8 Hidden (скрыть текст)
Foreground Colours (цвет пера, этим цветом выводится текст):
30 Black (черный)
31 Red (красный)
32 Green (зеленый)
33 Yellow (желтый)
34 Blue (синий)
35 Magenta (пурпурный)
36 Cyan (голубой)
37 White (белый)
Background Colours (цвет бумаги, или цвет фона):
40 Black (черный)
41 Red (красный)
42 Green (зеленый)
43 Yellow (желтый)
44 Blue (синий)
45 Magenta (пурпурный)
46 Cyan (голубой)
47 White (белый)
привет в соседнюю консоль
простой:
echo "Привет" > /dev/tty2
посложнее:
Файл дескриптор в Linux с примерами откроем консоль с bash и посмотрим PID нашего процесса
[user@localhost ]$ echo $$
15771
Во второй консоли запустим
[user@localhost ]$ ls -lah /proc/15771/fd/
total 0
dr-x------ 2 user user 0 Oct 7 15:42 .
dr-xr-xr-x 9 user user 0 Oct 7 15:42 ..
lrwx------ 1 user user 64 Oct 7 15:42 0 -> /dev/pts/21
lrwx------ 1 user user 64 Oct 7 15:42 1 -> /dev/pts/21
lrwx------ 1 user user 64 Oct 7 15:42 2 -> /dev/pts/21
lrwx------ 1 user user 64 Oct 7 15:42 255 -> /dev/pts/21
Файл дескриптор с номером 255 можете смело игнорировать в рамках данной статьи, он был открыт для своих нужд уже самим bash, а не прилинкованной библиотекой.
Сейчас все 3 файл дескриптора связаны с устройством псевдотерминала /dev/pts, но мы все равно можем ими манипулировать, например запустим во второй консоли
[user@localhost ]$ echo "hello world" > /proc/15771/fd/0
И в первой консоли мы увидим
[user@localhost ]$ hello world
strace -s 1024 -f bash -c "ls | grep hello"
для подключения к pty следует использовать клиент ttysnoop
ttysnoop /dev/pts/0
tty -s && echo "Внутри tty"
netcat чат меж компами tmux
https://wiki.archlinux.org/index.php/Tmux_(Русский)Краткая шпаргалка по tmux (менеджеру терминалов)Tmux - что это и зачем? Обзор и урок tmuxGNU Screen и tmux: ключ к эффективному использованию консолиШпаргалка по работе с Tmux (терминальный мультиплексор)Поддержка мышки в Midnight Commander запущенного из под tmux/screen небольшой конфигурационный файл:
$ vi ~/.tmux.conf
set -g mouse on
setw -g xterm-keys on
vi ~/.profile
if [ $TERM = "screen" ]; then
export TERM=xterm
fi
if [ -n "$TMUX" ]; then
export COLORTERM=rxvt
fi
$ tmux source-file ~/.tmux.conf
кратко
для подключения обратно используется другой аргумент командной строки:
$ tmux attach
для перехода к предыдущему окну следует использовать следующую команду:
$ tmux last-window
А для создания окна такую:
$ tmux new-window
Весь перечень поддерживаемых команд можно получить так:
$ tmux list-commands
Получить список всех возможных опций можно так:
$ tmux show-options
$ tmux show-window-options
Очень хороший способ запустить tmux:
tmux attach || tmux new - делая так, вы сперва пытаетесь подключиться к уже существующему серверу tmux, если он существует; если такого ещё нет - создаёте новый.
tmux new -s session1 - создание сессии с именем session1
tmux attach -t session1 - подключение к сессии session1
tmux a -t session1
Ctrl+b s Выбрать сессию
tmux kill-session -t session1 - Завершение сессии
После этого вы попадаете в полноценную консоль.
Ctrl+b d - отключиться. (Точно так же вы отключитесь, если прервётся соединение. Как подключиться обратно и продолжить работу - см. выше.)
В одной сессии может быть сколько угодно окошек:
Ctrl+b c - создать окошко;
Ctrl+b 0...9 - перейти в такое-то окошко;
Ctrl+b p - перейти в предыдущее окошко;
Ctrl+b n - перейти в следующее окошко;
Ctrl+b l - перейти в предыдущее активное окошко (из которого вы переключились в текущее);
Ctrl+b & - закрыть окошко (а можно просто набрать exit в терминале).
В одном окошке может быть много панелей:
Ctrl+b % - разделить текущую панель на две, по вертикали;
Ctrl+b " - разделить текущую панель на две, по горизонтали (это кавычка, которая около Enter, а не Shift+2);
Ctrl+b →←↑↓ - переходить между панелями;
Ctrl+b x - закрыть панель (а можно просто набрать exit в терминале).
Недостаток - непривычным становится скроллинг:
Ctrl+b PgUp - вход в «режим копирования», после чего:
PgUp, PgDown - скроллинг;
q - выход из «режима копирования».
работа с tmux
Старт
# tmux //без параметров будет создана сессия 0
# tmux new -s session1 //новая сессия session1. Название отображается снизу-слева в квадратных скобках в статус строке. Далее идет перечисление окон. Текущее окно помечается звездочкой.
Префикс (с него начинаются команды)
(CTRL + b)
Новое окно (нажать CTRL+b, затем нажать с)
Список окон
// переключиться курсором вверх-вниз
Переключение
// следующее окно
// предыдущее окно
// переключиться на номер окна
Окна можно делить на панели (Panes)
Как в тайловых (мозаичных) оконных менеджерах.
Деление окна горизонтально
либо команда
# tmux split-window -h
Деление окна вертикально
либо команда
# tmux split-window -v
Переход между панелей
// либо режим мыши
Изменение размеров панелей
// либо режим мыши
Закрытие окон
// нужно подтвердить y
либо
# exit
Отключение от сессии
либо
# tmux detach
Список сессий
# tmux ls
Подключиться к работающей сессии
# tmux attach //подключение к сессии, либо к единственной, либо последней созданной
# tmux attach -t session1 // подключение к сессии session1
Выбрать сессию
Завершение сессии
# tmux kill-session -t session1
Завершить все сессии
# tmux kill-server
Список поддерживаемых комманд
# tmux list-commands
Дополнительная информация
# man tmux
GNU Screen
https://www.gnu.org/software/screen/manual/screen.htmlhttps://wiki.archlinux.org/title/GNU_Screen_(Русский)Краткая шпаргалка по использованию GNU screen Стандартные команды
ctrl+a ? Отображает список команд и их параметры по умолчанию
ctrl+a : Ввод команды для screen
ctrl+a " Список окон
ctrl+a 0 Открыть окно 0
ctrl+a A Переименовать текущее окно
ctrl+a a Отправить ctrl+a в текущее окно
ctrl+a c Создать новое окно
ctrl+a S Разделить текущий регион на два по горизонтали
Ctrl+a | Разделить текущий регион на два по вертикали
ctrl+a tab Переключить фокус ввода на следующий регион
ctrl+a ctrl+a Переключение между текущим и предыдущим регионами
ctrl+a Esc Перейти в режим копирования (используйте enter для выделения текста)
ctrl+a ] Вставка текста
ctrl+a Q Закрыть все регионы кроме текущего
ctrl+a X Закрыть текущий регион
ctrl+a d Отключиться от текущего сеанса screen, оставив его работающим в фоне. Для переподключения используйте screen -r
Вводимые команды
Ctrl+a :quit Закрывает все окна и завершает сеанс screen
Ctrl+a :source ~/.screenrc Перезагружает файл настроек screenrc (также можно использовать /etc/screenrc)
Создание сеанса с определённым названием:
$ screen -S название_сеанса
Переименование текущего сеанса:
Ctrl+a :sessionname название_сеанса
Список всех существующих сеансов текущего пользователя:
$ screen -list
Подключение к существующему сеансу по его имени:
$ screen -x название_сеанса
или
$ screen -r название_сеанса
Ctrl+a a d Отсоединяется от внутреннего сеанса screen.
Ctrl+a a K Завершает (kill) внутренний сеанс screen.
Основные хоткеи в screen следующие.Основные хоткеи в screen следующие.
Окна:
Ctr + A, C Create, создать окно
Ctr + A, K Kill, прибить окно
Ctr + A, W Windows, показать список окон
Ctr + A, Space Переключитьcя на следующее окно
Ctr + A, N То же самое
Ctr + A, Backspace Переключиться на предыдущее окно
Ctr + A, P То же самое
Ctr + A, Ctr + A Вернутся на окно, с которого переключились
Ctr + A, " Выбрать из списка окно, на которое хотим переключиться
Ctr + A, 0-9 Переключиться на окно с таким-то номером
Ctr + A, ‘ Ввести номер окна, на которое хотим переключиться
Ctr + A, Shift + A Переименовать окно
Ctr + A, :number 3 Изменить номер окна
Ctr + A, I Info, информация о текущем окне
Ctr + A, Shift + N Number, номер и название текущего окна
Регионы:
Ctr + A, Shift + S Разделить текущий регион горизонтально
Ctr + A, | Разделить текущий регион вертикально
Ctr + A, :resize +5 Изменить размер региона вертикально (увеличить на 5)
Ctr + A, :resize -h 80 Изменить размер региона горизонтально (установить в 80)
Ctr + A, Tab Переключение между регионами
Ctr + A, Shift + X Прибить текущий регион
Ctr + A, Shift + Q Прибить все регионы кроме текущего
Мониторинг:
Ctr + A, Shift + M Включить/выключить мониторинг активности в окне
Сек + A, _ Мониторинг неактивности в течение 30 секунд
Скролинг и копирование текста:
Ctr + A, [ Перейти в режим copy/scrollback
Ctr + A, ] Вставить содержимое paste buffer (регистр . - «точка»)
Ctr + A, > Записать paste buffer во временный файл (bufferfile)
Ctr + A, < Считать paste buffer из временного файла
Ctr + A, = Удалить bufferfile
Ctr + A, :bufferfile Изменить имя bufferfile (нужно передать аргумент)
Ctr + A, :readreg a Положить paste buffer в регистр a
Ctr + A, :paste a Вставить содержимое регистра a
Разное:
Ctr + A, ? Подсказка по хоткеям
Ctr + A, D Detach
Ctr + A, \ Прибить все окна и выйти
Ctr + A, A Послать Ctr + A
Ctr + A, T Time, показать текущее время, имя хоста, LA
Ctr + A, V Version, показать версию screen
Ctr + A, X Lock, для разблакировки нужно ввести пароль пользователя
Ctr + A, F Fit, подогнать окно под размер текущего региона
Ctr + A, Z Как Ctr+Z для обычных приложений
Текстовые WM (wm в tty)
Viper Window Manager (VWM) - это легкий, расширяемый оконный менеджер для консоли.
http://vwm.sourceforge.net/index.html Monotty Desktopio Текстовая среда рабочего стола внутри вашего терминала
https://github.com/netxs-group/vtm Twin - это оконная среда с поддержкой мыши, оконным менеджером, эмулятором терминала и сетевыми клиентами, все внутри текстового дисплея.
https://github.com/cosmos72/twin разница между DE и WM, а также работа в голых иксах установка XRDP, VNC и SSH на Ubuntu и Debian. (tmux) почта в консоли mutt и msmtp делаем vim удобным Редактируем iso в Ubuntu Linux из консоли Копирование Audio CD проверка скорости интернета в консоли Профиты от использования консольного FTP-клиент lftp UTF в консоли FreeBSD консольная подборка консоль python в роли командной строки