이 질문에는 이미 답변이 있습니다.
나는 어떻게 쓰는지 알아낼 수 없다. !
기호를 큰 따옴표 문자열에 넣을 때 bash 스크립트에 추가하십시오.
예 :
var="hello! my name is $name! bye!"
다음 명령을 입력하면 뭔가 이상한 일이 생깁니다.
$ age=20
$ name='boda'
$ var="hello! my name is $name! bye!"
내가 마지막 명령에서 Enter 키를 누르면 명령은 마지막 명령없이 스스로 반복됩니다 (유형 자체). !
:
var="hello! my name is $name! bye"
다시 Enter 키를 누르면 :
$ var="hello! my name is $name bye"
Enter를 다시 누르면 아무것도 사라집니다.
$
내가 이것을 시도하면 :
$ echo "hello\! my name is $name\! bye\!"
그런 다음 출력 : hello\! my name is boda\! bye\!
작은 따옴표를 사용하면 내 이름이 확장되지 않습니다.
$ echo 'hello! my name is $name! bye!'
출력은 다음과 같습니다. hello! my name is $name! bye!
나는이 방법으로 일하고있다 :
$ echo "hello"'!'" my name is $name"'!'" bye"'!'
하지만 그것은 하나의 큰 난장판입니다. "
과 '
이해 / 편집 / 유지 / 업데이트가 불가능합니다.
누구든지 도와 줄 수 있습니까?
문제를 재현 할 수 없다니 유감입니다. 이제 저는 컴퓨터를 사용하고 있고 처음 세 단계를 거쳐 작성하면
—
Hastur
echo $var
나에게 대답 해. hello! my name is boda! bye!
. 정말로 쓰지 않았 니? var="hello! my name is $name! bye" !!
?
그것은 쉘 확장과 관련이있는 것 같습니다 ... @bodacydo 1. 3 줄 + echo $ var를 작은 스크립트에 작성하고 실행하십시오. 2. 새로운 쉘 쓰기
—
Hastur
echo hi
들어가고 난 후에 !!
들어가다. 실행 전에 확장되는지 확인하십시오. 아마도 set +o histexpand
도울 수있다.
복제: unix.stackexchange.com/q/246170/4667 과 stackoverflow.com/q/33980965/7552 - 여러 사이트에 동일한 질문을 게시하지 마십시오.
—
glenn jackman
$name
확장되지 않습니다!