Редактировать объекты yaml в массиве с помощью yq. Ускорить приведение терминала Терминализатора (запись)
Цель: ускорить приведение терминала Терминализатора (запись)
У меня есть запись терминала, созданного с помощью Terminalizer. cast.yaml
:
# The configurations that used for the recording, feel free to edit them
config:
# do not touch it
# Records, feel free to edit them
records:
- delay: 841
content: "\e]1337;RemoteHost=kyb@kyb-nuc\a\e]1337;CurrentDir=/home/kyb/devel/git-rev-label\a\e]1337;ShellIntegrationVersion=7;shell=fish\a"
- delay: 19
content: "\e]1337;RemoteHost=kyb@kyb-nuc\a\e]1337;CurrentDir=/home/kyb/devel/git-rev-label\a\e]0;fish /home/kyb/devel/git-rev-label\a\e[30m\e(B\e[m"
- delay: 6
content: "\e[?2004h"
- delay: 28
content: "\e]0;fish /home/kyb/devel/git-rev-label\a\e[30m\e(B\e[m\e[2m⏎\e(B\e[m \r⏎ \r\e[K\e]133;D;0\a\e]133;A\a\e[44m\e[30m ~/d/git-rev-label \e[42m\e[34m \e[42m\e[30m demo \e[30m\e(B\e[m\e[32m \e[30m\e(B\e[m\e]133;B\a\e[K"
- delay: 1202
content: "#\b\e[38;2;231;197;71m#\e[30m\e(B\e[m"
- delay: 134
content: "\e[38;2;231;197;71m#\e[30m\e(B\e[m"
- delay: 489
content: "\e[38;2;231;197;71m \e[30m\e(B\e[m"
- delay: 318
Я хочу ускорить окупаемость без прохождения --speed-factor
в terminalizer play
, Сделать так delay
должно быть уменьшено.
Итак, мне нужно создать yq
-выражение, чтобы уменьшить задержки
.records.delay=.records.delay/3
но это выражение не сработает. Пожалуйста, помогите написать правильный.
1 ответ
Решение
.records - это массив, поэтому вы можете использовать этот фильтр:
.records |= map(.delay /= 3)
Или вы можете предпочесть:
.records[].delay |= (. /= 3)