Проблемы встраивания команды в 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
,