Команда Tcl для поиска последней созданной папки в каталоге

To facilitate moving the terminal emulation into userland, while still keeping the TTY subsystem (session management and line discipline) intact, the pseudo terminal or pty was invented.

У парня по имени Линус Акессон есть демистифицированная TTY-страница со всей картинкой. (Я нашел это через Arch Linux wiki ДОБАВЛЕНО :mosvy, кажется, ненавидит это... ).

Несколько дней спустя мне все еще нравится тот ответ, который я привел выше. Даже в википедии есть ссылка. После некоторых обсуждений (см. комментарии, увы )я свободно отредактировал нижеследующее. Различия можно увидеть в кнопке "отредактировано..."..."PTMX" и "TTY Subsystem" являются новыми словами. Хороший чиновник (? )источник:drivers/tty/Kconfig


И «эмуляция терминала в пользовательской области » — это то, что делают xterm (и т. д. ). XTerm, вместе с X и оконным менеджером, должен сделать так, чтобы «bash» работал на Linux VT.

Прямым следствием того, что X заботится обо всем, что находится в пользовательской среде, является :после запуска многих xterm/bash, каждый xterm подключается к pts/0, а каждый bash к pts/1, pts/2,.. Я также могу запустить дочерние xterms/bash изнутри одного с помощью xterm &. Или запустите новый слой оболочки в xterm с помощью bash. В любом случае пользователь вскоре теряет связь с зависимостями ---, поэтому легко с помощью PTY создавать окна с оболочками.

VT (= VC )из "подсистемы TTY" используются более статические , с 64 в качестве (в первую очередь? ), и только 6 настроены после загрузки. С точки зренияgetty/agetty("открывает tty-порт,..." )это может выглядеть иначе.


Вот мои специальные файлы с мажором 5 в/dev:

crw-rw-rw- 1 root tty      5, 0     tty
crw------- 1 root root     5, 1     console
crw-rw-rw- 1 root tty      5, 2     ptmx

Пары? Этот термин, по-видимому, происходит от BSD-стиля PTY, когда каждый новый pty помещался в файл "p" и "s". В UNIX98 _PTY это:

/dev/ptmx :MX как MULTIPLEX(не MASTER X )для концептуальной главной стороны. И для клиентской стороны /dev/pts/1-n. Про /dev/pts/0 сейчас ничего не скажу. Один занятый ГЛАВНЫЙ и много занятых ПОДЧИНЕННЫХ.Это скорее отношение 1 -к -n, чем пара.

Эти три специальных файла символьных устройств с major=5 на самом деле являются специальными специальными файлами . Как файлы они мало что делают. Но за каждым файлом устройства стоит какой-то код, и вот он drivers/tty/*.c. Обработка клавиатуры не имеет большого значения. Это и коммутация ТН, и линейная дисциплина, а может и то и другое одновременно.

Существует каталог /dev/pts/с другим файлом ptmx и всеми основными файлами = 136 подчиненных устройств. Нормальный /dev/ttyNимеет мажор=4.


спин-офф из (удален? )комментарии :Это один из ioctl_consoleзапросов, которые обсуждал другой Q. «tty не является виртуальным терминалом» , говорит С.К. в ioctl VT _GETSTATE...tty не является vt(в последнем комментарии здесь, извините)

   VT_GETSTATE
          Get global vt state info.  argp points to a

              struct vt_stat {
                  unsigned short v_active;  /* active vt */
                  unsigned short v_signal;  /* signal to send */
                  unsigned short v_state;   /* vt bit mask */
              };

          For each vt in use, the corresponding bit in the v_state mem‐
          ber is set.  (Kernels 1.0 through 1.1.92.)

Изconfig UNIX98_PTY(Kconfig в драйверах/tty)

Typical programs for the master side are telnet servers and xterms.

Это процессы bash получают /dev/pts/1 -255, а не xterm. xterm и wm являются посредниками между x и bash. Это совместная работа с самого начала xinit wm xили xinit client -- server display.

0
11.11.2020, 11:49
2 ответа

Вы выбрали разумный формат даты и времени, который лексически и хронологически сортируется так же.

В Tcl вы бы сделали

cd Parent
set subdirs [glob -type d *]
set last [lindex [lsort $subdirs] end]

Если у вас есть другие подкаталоги, которые мешают сортировке, и вы хотите отфильтровать их, вы можете:

set subdirs [lmap dir [glob -type d *] {
  if {![regexp {^\d{4}-\d{2}-\d{2}_\d{2}.\d{2}.\d{2}$} $dir]} then continue
  set dir
}]
1
18.03.2021, 22:50
lindex [ lsort -decreasing [ glob -type d Parent/* ] ] 0
1
18.03.2021, 22:50

Теги

Похожие вопросы