Поиск по сайту:

Включить временную метку для команды истории в Fish Shell

Всякий раз, когда команда вводится в терминал, она сохраняется в конце файла истории в Linux. Вы можете легко получить эти команды в любое время, используя команду history. Оболочка также отслеживает временные метки всех записей команд, чтобы мы могли легко определить, когда выполняется конкретная команда. Мы уже показали вам, как включить временную метку в оболочках Bash и Zsh. Сегодня мы увидим, как включить временную метку для команды истории в Fish Shell в Linux. Кроме того, мы также узнаем, как создать простую функцию для отображения отметок даты и времени в выводе команды истории в Fish Shell.

Включить временную метку для команды истории в Fish Shell

Начиная с версии 2.6, оболочка fish поддерживает временные метки во встроенной команде history. Давайте выполним несколько команд в сеансе оболочки fish:

> lsb_release -a
> uname -r
> hostname -f
> mkdir ostechnix
> cd ostechnix/
> touch ostechnix.txt
> ls

Если вы запустите команду history без каких-либо флагов, вы увидите все эти ранее выполненные команды без меток времени.

> history
ls
touch ostechnix.txt
cd ostechnix/
mkdir ostechnix
hostname -f
uname -r
lsb_release -a
[...]

Чтобы включить временную метку для команды history в оболочке fish, используйте флаг --show-time, как показано ниже:

> history --show-time

Пример вывода:

Monday 30 November 2020 02:39:52 PM
history
Monday 30 November 2020 02:36:52 PM
ls
Monday 30 November 2020 02:36:47 PM
touch ostechnix.txt
Monday 30 November 2020 02:36:39 PM
cd ostechnix/
Monday 30 November 2020 02:36:36 PM
mkdir ostechnix
Monday 30 November 2020 02:34:11 PM
hostname -f
Monday 30 November 2020 02:33:51 PM
uname -r
Monday 30 November 2020 02:33:42 PM
lsb_release -a
[...]

Включить временную метку для команды истории в Fish Shell

Как видите, команда истории показывает временную метку вверху каждой команды. Мне не нравится, как в рыбной раковине отображаются отметки даты и времени. Итак, я настроил вывод команды истории, как показано ниже:

> history --show-time='%F %T '

Пример вывода:

2020-11-30 14:47:12 history --show-time
2020-11-30 14:39:52 history
2020-11-30 14:36:52 ls
2020-11-30 14:36:47 touch ostechnix.txt
2020-11-30 14:36:39 cd ostechnix/
2020-11-30 14:36:36 mkdir ostechnix
2020-11-30 14:34:11 hostname -f
2020-11-30 14:33:51 uname -r
2020-11-30 14:33:42 lsb_release -a
[...]

Теперь оно идеально!

Здесь опция %F отображает дату в формате ГГГГ-ММ-ДД (Год-Месяц-Дата). А опция %T показывает время в формате ЧЧ:ММ:СС (часы-минуты-секунды).

Если вы хотите показывать только дату, используйте эту команду:

> history --show-time='%F '

Пример вывода:

2020-11-30 ls
2020-11-30 touch ostechnix.txt
[...]

Чтобы отображать только время, используйте следующее:

> history --show-time='%T '

Пример вывода:

14:36:52 ls
14:36:47 touch ostechnix.txt
[...]

Вы также можете использовать следующие различные форматы:

> history --show-time='%d/%m/%y %H:%M:%S '

Это показывает вывод истории в следующем формате:

30/11/20 14:36:52 ls
30/11/20 14:36:47 touch ostechnix.txt
[...]

Вот еще одна версия:

> history --show-time='%h/%d - %H:%M:%S '

Пример вывода:

Nov/30 - 14:36:52 ls
Nov/30 - 14:36:47 touch ostechnix.txt
[...]

Функция fish для отображения отметок даты и времени в выводе команды истории.

Если вы хотите сохранить несколько штрихов, вы можете использовать функцию, как показано ниже.

> nano ~/.config/fish/functions/history.fish

Примечание. Если каталог ~/.config/fish/functions/ не существует, просто создайте его.

Добавьте следующие строки в файл history.fish:

function history
    builtin history --show-time='%F %T '
end

Теперь команда history покажет вам временную метку без каких-либо флагов:

Показывать дату и время в выводе команды истории в оболочке fish в Linux

Более подробную информацию можно найти на странице руководства Fish:

> man fish

Теперь вы знаете, как отображать дату и время в выводе команды history в оболочке fish в Linux. Вы также узнали, как использовать простую функцию, чтобы включить временную метку для команды истории в оболочке fish. Надеюсь, вы найдете это полезным.

Связанное чтение:

  • Как запустить Fish Shell в приватном режиме в Linux

Статьи по данной тематике