Quantcast
Channel: Bashタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 2912

Bashスクリプトメモ

$
0
0

bashメモ

MyDNS.JPのIPv4更新用スクリプトをシェルスクリプトで作ってみた(MyDNS.jp-v4-Update.sh)ので、そのときの知見をメモ

変数代入

スペースを開けずに代入する

hoge="hoge"

NG例

以下のようにスペースを開けて代入するとnot foundとかコマンドが見つかりませんとか怒られる

hoge = "hoge"

文字列長取得

数値として取れる模様

${#hoge}

文字列変数展開

頭にドルつける

echo $hoge

文字列結合

echo "もじ${hoge}もじ"

コマンド展開

その1

バッククォートで囲む

hoge=`echo "hoge"`

その2

$()で囲む。ネストするときに書きやすい

hoge=$(echo "hoge")

1と2を繋げたネストのサンプル

例えばip_resの内容は"127.0.0.1 200"の様になる

ip_res=`echo "\""$(curl inet-ip.info/ip -s -m 10 -w ' %{http_code}')"\""`

日付取得

hoge_date=`date "+%Y/%m/%d %H:%M:%S"`

if文

hoge="hoge"if[${hoge}="hoge"];then# ほにゃらら elif[ 1 -eq 1 ];then# 数値と文字列で比較演算子が違う?else# ふにゃららfi

関数

明示的に指定しない限りスコープの概念はないっぽい

fuga(){# ふがゃらら}

fuga

echoでエスケープシーケンス

-eオプションを付ける

echo -e "\n"

参考記事


Viewing all articles
Browse latest Browse all 2912

Trending Articles