&a
변수가 정의되면 화면에 출력됩니다 a
. 이것이 내 bash에서 일어나는 일입니다.
localhost:~ $ a=5
localhost:~ $ echo $$a
83079a
localhost:~ $ echo ^$a
^5
localhost:~ $
나는 그것을 이해할 수 없다 $a
.
이 게시물을 찾았습니다.https://stackoverflow.com/questions/4087695/escaping-ampersands-in-windows-batch-files
echo a ^& b
will get 이라고 나와 있지만 a & b
내 bash를 통해 다음을 얻습니다.
localhost:~ $ echo a ^& b
[1] 83134
a ^
-bash: b: command not found
답변1
echo
변수에 큰따옴표 사용
localhost:~ $ a=5
localhost:~ $ echo "$a"
5
localhost:~ $ echo '$a'
$a
localhost:~ $ echo "a & b"
a & b
또는 \
따옴표 없이 이스케이프하려면 백슬래시를 사용하세요.
localhost:~ $ echo a \& b
a & b
localhost:~ $ echo \$a
$a
답변2
r@S:/tmp # a=10
r@S:/tmp # echo $a
10
r@S:/tmp # echo \$a
$a
r@S:/tmp #