printf
느낌표를 표현하는 가장 좋은 방법은 무엇입니까 !
?tcsh
?
작은따옴표나 큰따옴표를 사용하면 느낌표를 이스케이프 처리하는 데 아무런 영향을 미치지 않는 것 같습니다. 백슬래시를 사용하면 \!
작동하지만 history
.
편집: 특히 2014-09-21T15:34Z에 대한 내 의견에 따르면 문제가 재현 가능합니다 . 문제를 경험하려면 다시 로드 savehist
해야 합니다 . :-)exit
tcsh
답변1
당신이 사용하는 경우tcsh
(원본 아님 ) 변수를 csh
설정해야 합니다 .histlit
histlit
(+)
설정된 경우 내장 및 편집기 명령과 savehist 메커니즘은 기록 목록에 있는 행의 리터럴(확장되지 않은) 형식을 사용합니다.
toggle-literal-history
편집기 명령 도 참조하세요 .
set histlit=1
따라서 or 에 ~/.cshrc
한 줄만 추가하면 됩니다 ~/.tcshrc
.
그 후에는 백슬래시를 사용하여 인용할 수 있습니다 !
.
printf 'a\!b\n'
답변2
노력하다:
$ printf 'a\!c\n'
a!c
또는:
$ printf '%s\n' a\!c
답변3
tcsh
! 기록 대체 문자를 사용하세요.
g4ur4v:~> echo $0
tcsh
g4ur4v:~> printf '!\n'
!
편집하다
g4ur4v:~> echo 'a\!c'
a!c
g4ur4v:~> printf 'a\!c\n'
a!c