저는 .bashrc에서 간단한 별칭을 설정하는 데 익숙하고 이것이 제가 원하는 것을 할 수 있을 것이라고 생각했지만 어떻게 해야 할지 잘 모르겠습니다. 소원: 항상 $?를 에코하나요? 특정 프로그램이 실행된 후. 성공하더라도 언뜻 보면 오류처럼 보이는 다소 당혹스러운 STDERR 메시지를 인쇄하는 특정 프로그램을 실행하고 싶습니다. 나는 항상 $? 실제로 이것을 읽기 전에 첫 번째 확인으로, 그러나 적어도 4분의 1의 시간 동안 나는 오타를 범하고 반향할 기회를 잃습니다. 내가 하고 싶은 것은 내가 입력할 때 별칭을 설정하는 것입니다.
$ foo --option [argument]
실제로 그렇습니다
$ foo --option [argument]
working blah blah blah
$ echo $?
가능합니까?
답변1
사용 기능:
foo () {
command foo "$@"
echo "$?"
}
이는 foo
제공된 인수를 사용하여 명령을 실행한 다음 종료 상태를 표시합니다.
당신은 또한 갖고 싶을 수도 있습니다foo
기능다음과 동일한 종료 상태를 반환합니다.foo
주문하다그리고:
foo() {
local ret
command foo "$@"
ret="$?"
echo "$ret"
return "$ret"
}