bash記法–初歩初歩

echo

$echo hoge{1,2,3,4}
hoge1 hoge2 hoge3 hoge4

for

{1..10}で1から10までの配列を作るみたいに、{1..$a}で配列は作れないっぽく、seqを使わないといけないっぽい。

$a=10
$seq 1 $a
1
2
3
4
5
6
7
8
9
10
$for i in {1..$a}
> do
> echo $i
> done
{1..10}
$for i in `seq 1 $a`
> do
> echo $i
> done
1
2
3
4
5
6
7
8
9
10

サブシェル

$ tmp > (cd /usr; ls )
bin  etc  games  include  java  lib  lib64  libexec  local  sbin  share  src  
$ tmp > pwd
/tmp サブシェル内のcdの影響を受けない
$ tmp > var="test"
$ tmp > (var="fuga"; echo $var)
fuga
$ tmp > echo $var
test シェル変数は変更されない

参考 http://qiita.com/rsooo/items/ef1d036bcc7282a66d7d