Проблемы встраивания команды в Bash PS1

Привет всем. У меня возникли проблемы при попытке вставить эту команду в мою подсказку bash, чтобы она обновлялась при каждом отображении подсказки. Я хотел бы, чтобы это было частью самой подсказки

free -m | tr -s ' ' '\t' | grep Mem: | cut -f3

Предложения и идеи будут оценены

2 ответа

Решение

Вместо настройки PROMPT_COMMAND, как предложил @waltinator, вы можете встроить команду в фактическое приглашение с подстановкой процесса:

PS1='\u@\h\n$(showmem) \$ '

Этот PS1 основан на том, что вы упомянули в комментарии, и использует функцию, которую создал @waltinator.

Что ты пробовал? Вы можете определить функцию в вашем ~/.bashrc, таким образом:

function showmem() {
    free -m | tr -s ' ' '\t' | grep Mem: | cut -f3
}  

а затем установить Bash's PROMPT_COMMAND к этой функции

PROMPT_COMMAND=showmem

Запомни source ~/.bashrc всякий раз, когда вы меняете ~/.bashrc,

Другие вопросы по тегам