Можно ли добавить символ к каждой строке вывода терминала, для каждой команды?
Является ли это возможным?
Например, скажите, что я хочу запустить команду ll
:
Мой вывод будет выглядеть примерно так:
josh@zeitgeist ~ ll
total 41148
drwxr-xr-x 42 josh josh 4096 Aug 4 22:52 ./
drwxr-xr-x 4 root root 4096 Jul 9 21:18 ../
-rw-rw-r-- 1 josh josh 3523718 Jul 11 00:17 2017-07-11-001710_3840x2160_scrot.png
но я хочу, чтобы это выглядело так:
josh@zeitgeist ~ ll
XXXtotal 41148
XXXdrwxr-xr-x 42 josh josh 4096 Aug 4 22:52 ./
XXXdrwxr-xr-x 4 root root 4096 Jul 9 21:18 ../
XXX-rw-rw-r-- 1 josh josh 3523718 Jul 11 00:17 2017-07-11-XXX001710_3840x2160_scrot.png
Я уже знаю об использовании PS1='XXX'
изменить подсказку; Есть ли способ изменить каждую строку вывода, который отображается, в частности, в терминале (не изменяя вывод и не помещая его в файл)?
Я хотел бы сделать это, чтобы единая линия символов шла вниз по левой стороне моего терминала.
4 ответа
Prepend XXX
на все строки, включая пустые строки.
ll | sed 's/^/XXX/'
Изменить: После изменения PS1 вы можете вызвать решение для всех команд, используя
bash | sed 's/^/XXX/'
Вы могли бы сделать что-то вроде этого, я полагаю:
while read; do echo "xxx $REPLY"; done < <(ls -l)
Не совсем уверен, что цель этого будет все же.