종료자 레이아웃 명령을 기록에 표시하는 방법은 무엇입니까?

종료자 레이아웃 명령을 기록에 표시하는 방법은 무엇입니까?

~/.config/terminator/config터미네이터 레이아웃을 저장하고 시작 시 실행되는 명령을 추가하는 즐거움을 발견했습니다. 또한 시계 명령을 일시적으로 중지하기 위해 Ctrl+를 누른 후 c명령이 기록에 없기 때문에 위쪽 화살표를 눌러 시계를 다시 시작할 수 없다는 사실도 발견했습니다 .

다음은 명령을 인쇄하는 추악한 해결 방법입니다.

command = (set -x; watch "date") && bash || bash

Ctrl이를 통해 명령을 + 뒤에 복사할 수 있지만 c누가 그럴 시간이 있습니까? 위쪽 화살표가 작동하길 원합니다. bash 마법으로 이 문제를 해결할 수 있기를 바랍니다.

RHEL에서 Finalizer 1.91 사용

답변1

이것이 내가 원하는 것 같습니다:

command = watch date && echo "watch date" >> ~/.bash_history && bash || bash

에서 영감을 받다Bash 스크립트에서 실행될 때 기록에 명령을 추가하려면 어떻게 해야 합니까?

답변2

명령을 반복할 필요가 없도록 하려면 다음 명령을 입력하십시오.~/.config/terminator/config

command = '''bash -ic 'histrun '\''watch "date"'\''''''

이것은.bash_rc

histrun() {
  eval $1 && printf '%s\n' "$1" >> ~/.bash_history && bash || bash
}

즉시 실행하고 싶지 않지만 클릭 후 즉시 기록에서 사용할 수 있는 다른 명령(이 경우 날짜)이 있는 경우 ctrl-c다음 명령을 사용하십시오.

command = '''bash -ic 'histhold '\''date'\''''''

이것으로:

histhold() {
  printf '%s\n' "$1" && (watch cat) && printf '%s\n' "$1" >> ~/.bash_history && bash || bash
}

관련 정보