2013/07/24

bash local 変数

bash では特に指定しない限り、変数は常にグローバルな変数として扱われる
変数をつくるたびに、グローバルな領域を汚染するので、
対策として bash のビルトインコマンド local を使用する

for ループに使用する変数や、read で受け取る変数もグローバル変数になる
for や read の変数名の前に local を置くと、残念ながら構文エラーになる
(#!/bin/zshでエラーにならない。。#!/bin/bashでエラー)

local と宣言する
local hoge