Bu sorunun zaten burada bir cevabı var:
- Kısaca, ünlem işaretinden nasıl kaçabilirim? 5 cevaplar
Nasıl yazılacağını çözemiyorum !
bash betiğindeki sembol çift tırnaklı dizelere yerleştirilir.
Örneğin:
var="hello! my name is $name! bye!"
Aşağıdaki komutları yazarsam çılgınca bir şey olur:
$ age=20
$ name='boda'
$ var="hello! my name is $name! bye!"
Son komutta enter tuşuna bastığımda, komut sonuncusu olmadan kendisini tekrar eder (kendisini yazar) !
:
var="hello! my name is $name! bye"
Eğer tekrar basarsam:
$ var="hello! my name is $name bye"
Enter tuşuna tekrar basarsam kaybolmaz hiçbir şey çıkmaz:
$
Bunu denersem:
$ echo "hello\! my name is $name\! bye\!"
Sonra çıktılar: hello\! my name is boda\! bye\!
Tek tırnak kullanırsam, adım genişlemiyor:
$ echo 'hello! my name is $name! bye!'
Çıktılar: hello! my name is $name! bye!
Bu şekilde çalışmasını sağladım:
$ echo "hello"'!'" my name is $name"'!'" bye"'!'
Ama bu büyük bir karmaşa "
ve '
anlamak / düzenlemek / sürdürmek / güncellemek imkansız.
Biri yardım edebilir mi?
echo $var
bana cevap veriyor hello! my name is boda! bye!
. Yazmadığından emin misin? var="hello! my name is $name! bye" !!
?
echo hi
gir ve sonra !!
girmek. Çalıştırmadan önce genişletip genişletmediğini kontrol edin. Olabilir set +o histexpand
yardım edebilir.
$name
genişlemiyor!