끝에 " " 가 있는 형식 으로 반환 하고 싶습니다 pwd
. 이것을 달성하는 방법에 대한 아이디어가 있습니까?/path/to/dir
/path/to/dir/
/
답변1
를 사용하면 다음과 같이 bash4.4+
재정의할 수 있습니다 pwd
.
pwd() {
local -
set -o pipefail
builtin pwd "$@" | sed '${/\/$/!s|$|/|;}'
}
/
즉, 현재 작업 디렉터리의 마지막 줄이 아직 존재하지 않으면 마지막 줄(예: after cd /
)에 추가되고 옵션을 통해 원래 종료 상태가 반환됩니다 pipefail
(이 기능에만 사용됨 local -
).
( 로 zsh
교체, ).local -; set -o pipefail
set -o localoptions -o pipefail
POSIXly에서는 다음과 같이 할 수 있습니다.
pwd() (
pwd=$(command pwd "$@" && echo .) || exit
pwd=${pwd%??}
pwd=${pwd%/}/
printf '%s\n' "$pwd"
)