Итак, вы хотите создать приложение TUI(с текстовым -пользовательским интерфейсом )? Как сказано на странице Википедии TUI :
In Unix-like operating systems, TUIs are often constructed using the terminal control library curses, or ncurses, a mostly compatible library.
Простым способом взаимодействия с ncurses является инструмент командной строки tput
. И с этим мы можем ответить на ваш конкретный вопрос о «полноэкранном режиме -». Обычно это делается путем активации вторичного экрана (, который должен быть доступен в любом приличном эмуляторе терминала ):
.
tput smcup
Текущий экран будет скрыт (, например. вы не сможете прокрутить вверх и увидеть предыдущий вывод ), а на новом, «свежем» экране вы отобразите свое приложение. Когда это выйдет, вернитесь к основному экрану с:
tput rmcup
...и все вернется на круги своя.
Вот пример других tput
возможностей
tput cup 23 4 # move the cursor to row 23, column 4 of your terminal
tput ed # clear to end of screen
tput setaf 2 # set foreground color to bright green
tput cubl # move cursor left one space
tput rev # turn on reverse video mode
tput sc # save the cursor position
tput rc # restore the cursor position
См. man tput
и man 5 terminfo
. Для последнего вам нужно прокрутить вниз, в частности, до раздела Предопределенные возможности .
Кроме того, в Интернете можно найти множество полезных ресурсов, таких какhttp://linuxcommand.org/lc3_adv_tput.php
(Обратите внимание, что ничто из вышеперечисленного не связано с тем, используете ли вы tmux
и т.п.)
Пропустите файл через bzcat
и передайте результат вfile
:
$ bzcat somefile.bz2 | file -
/dev/stdin: data # or whatever; this is not a.tar.bz2
$ bzcat otherfile.bz2 | file -
/dev/stdin: POSIX tar archive # this *is* a.tar.bz2
file
все равно :он смотрит на формат , а не на имя файла .
Содержимое в формате tar -можно просмотреть, только распаковав файл.
Если у вас есть версия file
, которая поддерживает параметры -z
или -Z
, вы можете использовать любой из них, чтобы попытаться заглянуть внутрь сжатых файлов, чтобы узнать, что они из себя представляют.
Ни один из параметров не является частью спецификации POSIX для файла .
Тем не менее, опция -z
была в команде BSD file
в течение очень долгого времени, по крайней мере, с начала 2000-х годов (журнал изменений в моей системе ничего не показывает до 2003 года ). -Z
был добавлен в июне 2015 года. BSD file
используется во многих современных системах, включая большинство (all? )дистрибутивы Linux, *BSD и Mac OSX.
Изman file
:
-z, --uncompress
Try to look inside compressed files.
-Z, --uncompress-noreport
Try to look inside compressed files, but report information about the contents only not the compression.
Например:
# make a.tar.bz2 file
tar cfj test.tar.bz2 *
# make a.bz2 file
echo junk | bzip2 -c > junk.bz2
# try to fool `file`
cp test.tar.bz2 test.bz2
cp junk.bz2 junk.tar.bz2
echo "file -z:"
file -z *.bz2
echo
echo
echo "file -Z:"
file -Z *.bz2
Выход:
file -z:
junk.bz2: ASCII text (bzip2 compressed data, block size = 900k)
junk.tar.bz2: ASCII text (bzip2 compressed data, block size = 900k)
test.bz2: POSIX tar archive (GNU) (bzip2 compressed data, block size = 900k)
test.tar.bz2: POSIX tar archive (GNU) (bzip2 compressed data, block size = 900k)
file -Z:
junk.bz2: ASCII text
junk.tar.bz2: ASCII text
test.bz2: POSIX tar archive (GNU)
test.tar.bz2: POSIX tar archive (GNU)