LoginSignup
3
1

More than 3 years have passed since last update.

ShellScript 変数 に \ を格納する

Posted at

目的

  • Linuxで変数に\(バックスラッシュ)を格納する方法を知る。

"\"(円マーク バックスラッシュ)は特殊文字

  • \は特殊な意味を持った文字として扱われるらしい。
  • \はエスケープ文字として扱われている。
  • エスケープ文字とは\を含む特殊文字を通常の文字として扱うことができるようにするためのもの
  • 特殊文字を普通のもじとして使用したいときにエスケープ文字を置き、そのあとに特殊文字を置く
  • エスケープ文字について下記で説明する。(>はターミナルの出力)
# 下記のコマンドは一つ前のコマンドの戻り値を出力するコマンド(正常に実行されると0を出力する)
$ echo $?
>0

# ターミナルに[$?]という文字を出力させたいときにエスケープ文字を使用する
$ echo \$?
>$?

"\"(円マーク バックスラッシュ)を表示するには

  • 前の\が後ろの\をエスケープしている。
  • \一つでエスケープできる文字は一つである。
  • 前述の内容を加味すると\を2個連続で出力したいときはecho \\\\となる。
  • 下記に\をターミナル上に出力する方法を記載する。
$ echo \\
>\

"\"(円マーク バックスラッシュ)を変数に格納するには

  • 下記に変数stringに\を格納する方法を記載する。
#\を一つ格納する
$ string=\\
$ echo ${string}
> \

#\を二つ格納する
$ string=\\\\
$ echo ${string}
> \\

#\を三つ格納する
$ string=\\\\\\
$ echo ${string}
> \\\
3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1