プログラミング言語/ShellScript
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*ShellScript [#e5a70b7d]
#contents
*はじめに [#scf4520c]
シェルスクリプトは、シェルで実行するプログラムを指します。
シェルは主にUnixで使われる対話型インタプリタです。
シェルスクリプトはテキストファイルに書いたコマンドなどの...
Windowsで動作するシェルは、[[cygwin:http://www.cygwin.com...
UnixやLinuxでは通常OSと一緒にインストールされます。
シェルスクリプトは、一般的にbourne shell(Bシェル)向けにか...
*シェルスクリプトのスペースと改行 [#qcc448c6]
シェルスクリプトはスペースと改行がとても重要である。中途...
たとえば以下のプログラムの場合、[のあとにスペースは絶対必...
if [ -n file ];then
echo "exist"
fi
これは[自体がコマンドだと考えればスペースが必要な理由がわ...
*とりあえず動かす [#v4a46338]
**''shでHelloWorld!'' [#k0b4af5d]
まず、テキストファイルで以下のように記述し、適当なファイ...
#!/bin/sh
echo "HelloWorld!"
次に、UnixやLinuxの場合はターミナルやコンソールから、Wind...
sh hello.sh
のように実行します。
また、1行目の記述はUnixやLinux環境で直接ファイルを実行す...
これによって、UnixやLinuxでは、
./hello.sh
のように実行することができます(ただしファイルに実行権が...
**''関数を使ってHelloWorld!'' [#r3022675]
今度は関数を使って先ほどと同様のプログラムを書いてみます。
関数の定義は、
FUNC_NAME() {
関数の中身
}
です。関数の呼び出しかたは、普通に
FUNC_NAME [ARGS....]
で呼び出せます。
関数に引数がある場合は、$1, $2 ,,, $9でそれぞれ1から9番目...
#!/bin/sh
# 関数の定義
Hello()
{
echo "$1"
}
# 関数の呼び出し(関数名+引数)
Hello HelloWorld!
**シェル変数を使ったHelloWorld [#c41f1114]
変数に値を代入するには、
NAME=VALUE
のように記述します。このように記述された変数をシェル変数...
NAME = VALUE #NAMEコマンドに=とVALUEという引数を渡したと...
また、変数に代入した値を参照する場合は、
${NAME}
もしくは
$NAME
のように記述します。
#!/bin/sh
HELLO="HelloWorld!"
echo ${HELLO}
変数の値として、コマンドや関数の出力を使いたい場合は、` (...
#!/bin/sh
#HELLOという変数に、echo "HelloWorld!"を実行したときの出...
HELLO=`echo "HelloWorld!"`
echo ${HELLO}
**コマンドライン引数を受け取る [#yc9e700e]
シェルスクリプトも当然他のコマンドのように引数を受け取れ...
例:
#!/bin/sh
# test.sh
echo $1 $2
実行例:
$ ./test.sh hello world!
hello world!
*ループ処理 [#g0e9dd3e]
**For文 [#a28344c3]
シェルスクリプトでForは次のように使えば良い。
for list in a b c d
do
echo ${list}
done
これを実行すると以下のようになる
$ ./test.sh
a
b
c
d
a b c d の部分は、$listに入れるリストでスペースか改行で区...
つまり以下のような使い方もできる。
for file in ./*
do
file ${file}
done
これを実行すると以下のようになる
$ ./test.sh
./dir: directory
./hello.txt: UTF-8 Unicode text
./ruby.rb: a /usr/local/bin/ruby script text executable
./test.sh: POSIX shell script text executable
*参考 [#jbdd0f96]
[[Bourne Shell 自習テキスト:http://flex.ee.uec.ac.jp/texi...
終了行:
*ShellScript [#e5a70b7d]
#contents
*はじめに [#scf4520c]
シェルスクリプトは、シェルで実行するプログラムを指します。
シェルは主にUnixで使われる対話型インタプリタです。
シェルスクリプトはテキストファイルに書いたコマンドなどの...
Windowsで動作するシェルは、[[cygwin:http://www.cygwin.com...
UnixやLinuxでは通常OSと一緒にインストールされます。
シェルスクリプトは、一般的にbourne shell(Bシェル)向けにか...
*シェルスクリプトのスペースと改行 [#qcc448c6]
シェルスクリプトはスペースと改行がとても重要である。中途...
たとえば以下のプログラムの場合、[のあとにスペースは絶対必...
if [ -n file ];then
echo "exist"
fi
これは[自体がコマンドだと考えればスペースが必要な理由がわ...
*とりあえず動かす [#v4a46338]
**''shでHelloWorld!'' [#k0b4af5d]
まず、テキストファイルで以下のように記述し、適当なファイ...
#!/bin/sh
echo "HelloWorld!"
次に、UnixやLinuxの場合はターミナルやコンソールから、Wind...
sh hello.sh
のように実行します。
また、1行目の記述はUnixやLinux環境で直接ファイルを実行す...
これによって、UnixやLinuxでは、
./hello.sh
のように実行することができます(ただしファイルに実行権が...
**''関数を使ってHelloWorld!'' [#r3022675]
今度は関数を使って先ほどと同様のプログラムを書いてみます。
関数の定義は、
FUNC_NAME() {
関数の中身
}
です。関数の呼び出しかたは、普通に
FUNC_NAME [ARGS....]
で呼び出せます。
関数に引数がある場合は、$1, $2 ,,, $9でそれぞれ1から9番目...
#!/bin/sh
# 関数の定義
Hello()
{
echo "$1"
}
# 関数の呼び出し(関数名+引数)
Hello HelloWorld!
**シェル変数を使ったHelloWorld [#c41f1114]
変数に値を代入するには、
NAME=VALUE
のように記述します。このように記述された変数をシェル変数...
NAME = VALUE #NAMEコマンドに=とVALUEという引数を渡したと...
また、変数に代入した値を参照する場合は、
${NAME}
もしくは
$NAME
のように記述します。
#!/bin/sh
HELLO="HelloWorld!"
echo ${HELLO}
変数の値として、コマンドや関数の出力を使いたい場合は、` (...
#!/bin/sh
#HELLOという変数に、echo "HelloWorld!"を実行したときの出...
HELLO=`echo "HelloWorld!"`
echo ${HELLO}
**コマンドライン引数を受け取る [#yc9e700e]
シェルスクリプトも当然他のコマンドのように引数を受け取れ...
例:
#!/bin/sh
# test.sh
echo $1 $2
実行例:
$ ./test.sh hello world!
hello world!
*ループ処理 [#g0e9dd3e]
**For文 [#a28344c3]
シェルスクリプトでForは次のように使えば良い。
for list in a b c d
do
echo ${list}
done
これを実行すると以下のようになる
$ ./test.sh
a
b
c
d
a b c d の部分は、$listに入れるリストでスペースか改行で区...
つまり以下のような使い方もできる。
for file in ./*
do
file ${file}
done
これを実行すると以下のようになる
$ ./test.sh
./dir: directory
./hello.txt: UTF-8 Unicode text
./ruby.rb: a /usr/local/bin/ruby script text executable
./test.sh: POSIX shell script text executable
*参考 [#jbdd0f96]
[[Bourne Shell 自習テキスト:http://flex.ee.uec.ac.jp/texi...
ページ名: