[Linux] 変数がワイルドカード展開されるのを無効化する方法
変数内のワイルドカードが展開される シェルで入力を受け取ってコマンドのパラメータとして渡す形で利用するとき、ワイルドカードが展開されて予期せぬ動作が引き起こされる場合があります。 例えばカレントディレクトリが以下のようになっているとします。 . ├── foo.txt └── hoge.txt この状態で以下のように * を echo するとワイルドカード展開されてファイルが表示されてしまいます。 […]
Web備忘録 プログラミングを中心に技術的な事柄を忘れないように書き残します。
変数内のワイルドカードが展開される シェルで入力を受け取ってコマンドのパラメータとして渡す形で利用するとき、ワイルドカードが展開されて予期せぬ動作が引き起こされる場合があります。 例えばカレントディレクトリが以下のようになっているとします。 . ├── foo.txt └── hoge.txt この状態で以下のように * を echo するとワイルドカード展開されてファイルが表示されてしまいます。 […]
declare コマンド declare コマンドはシェル変数や環境変数を宣言するために使うコマンドです。このコマンドを使わなくても変数の宣言はできますが、declare コマンドのオプションを利用することでいろいろなことができます。 オプションを使って特殊な属性を変数に付与することで、明示的に処理の実装を進めることが可能です。 declare コマンドの使い方 declare [オプション] [ […]
dd コマンド dd (UNIX) – Wikipedia dd コマンドは、あるファイルやデバイスから別のファイルやデバイスに指定のバイトサイズ単位で読み書きできます。 このコマンドはほかの一般的な Unix系 コマンドのオプション指定とは異なるフォーマットを使います。 dd コマンドは cp コマンドと同じようにファイルのコピーにも使えます。ですが、cp コマンドはファイルを対象に […]
コマンド結果をリアルタイム監視したい コマンドなどの処理結果をリアルタイムで監視したい場合 watch コマンドを使います。 watch コマンドは指定のコマンドを一定間隔で実行し、その結果を監視しします。コマンドの処理結果(出力)を監視し、直近の処理結果と比較してその差分をハイライトで表示します。 watch コマンドの実行者はハイライトされる変更内容を目視で確認し、何かしらの対応を行うような使 […]
シェルスクリプトで使用されるカッコいろいろ シェルスクリプト(コマンド)で使われるカッコにはそれぞれ異なる文法上の意味があります。ここでは8種類のカッコの使い方についてまとめます。 [] 角括弧、bracket、ブラケット [[]] 二重角括弧、double bracket、ダブルブラケット () 丸括弧、parenthesis、パーレン (()) 二重丸括弧、double parenthesis […]
リダイレクトとファイルディスクリプタ シェルスクリプトやコマンドで入出力の向き先を変更したいときには リダイレクト を使います。リダイレクトはファイルディスクリプタの参照先を変更することで入出力の向き先を変更します。 ファイル記述子 – Wikipedia Unix系OSではファイルディスクリプタ(ファイル記述子のこと、以下 FD)が3種類あります。それぞれ 0,1,2 の数で表されま […]
シェルスクリプトでランダムな文字列を生成したい シェルスクリプトで任意の文字種と長さで構成されるランダムな文字列を生成する関数を作ってみます。 ランダムな文字列を作るには当然ランダム要素が必要になるので乱数を使います。今回は $RANDOM をで乱数を作成します。シェルスクリプトで乱数を扱う方法は複数あるので乱数が作れれば何でもよいですので以下の記事を参考にしてください。 シェルで乱数($RAND […]
/dev/null の意味 /dev/null – Wikipedia Linux をはじめ Unix系のOSでは /dev/null という疑似デバイスファイル(スペシャルファイル)が用意されています。/dev/random や /dev/urandom と同じように特殊なデバイスファイルです。 /dev/null に書き込まれたデータはすべて破棄され、どこからどれだけ読み込んでも何 […]
ファイルデータをダンプするコマンド Linux コマンドでデータをダンプして確認したいときに使えるコマンドとして3種類(hexdump, xdd, od)くらいがあります。バイナリァイルの中身を確認したいときなどによく使用するコマンドです。 3種類のコマンドはいずれも16進数とASCII文字のダンプに対応しているため、この用途だとどのコマンドでも大体同じように扱えます。 16進ダンプ – […]
シェルスクリプト、コマンドでの乱数 シェルスクリプトやコマンドで乱数を扱う方法をまとめます。 幾つかの手段が用意されており、それぞれできることが微妙に異なります。 組み込み変数の $RANDOM シェル(bash や zsh)が提供する組み込みの変数 $RANDOM は、参照するたびに0から32767までのランダムな整数(16bit)が生成されます。 $ echo $RANDOM 27053 $R […]