皆さんは、シェルスクリプトをご存知でしょうか?
シェルスクリプトは、
使いこなせるようになれば非常に便利なツールです。
しかし、その利便性に反して、
あまり知名度は高くありませんね。
これは非常に勿体無いことです。
そこで本記事では、
シェルスクリプトの入門的な使い方を、
どこよりもわかりやすくご説明いたします!
ぜひこの記事でシェルスクリプトの基本を身につけていただき、
周りのエンジニアと差をつけてください!
この記事を最後まで読めば、必ず成長できますよ!
Contents
シェルスクリプトとは?変数の宣言、代入、計算、引数などのコマンド実行方法をチェック!linux, mac, windows
bashでシェルスクリプトを書く準備
作業ファイルの作成
terminalで、自分が作業したいディレクトリへ移動します。
と入力し、test1.shをemacs上で書き換えていきます。
(emacs以外のテキストエディタでももちろんOKです。
atomやvimなど、お好みのテキストエディタをおつかいください。)
権限の編集
次に、実行ファイルとしての権限を付与するために、以下のコマンドを入力します。
chmodはファイルのアクセス権限を変更するコマンドです。
その次に書かれている755という数字は、
ファイルに与えるパーミッションを指定するための数字です。
具体的には、左から順番に
「自分」、「グループのメンバー」、「他人」
に対応しています。
一番左の「7」は、「自分」が「読み、書き、実行」の権限をもつことを表し、
真ん中の「5」は、「グループのメンバー」が「読み、実行」の権限を、
右の「5」は、「他人」が同じく「読み、実行」の権限を持つことを表します。
数字は2進法で3桁の数字、つまり
2の3乗=8通り
あり、
1が実行、2が書き、4が読み
にそれぞれ対応しています。
これらを足し算することで、0~7までの数字が権限を表すことになります。
足し算 | 付与する権限 | ls -l の結果 | |
---|---|---|---|
7 | 4 + 2 + 1 | 読書実行 | rwx |
6 | 4 + 2 | 読書 | rw- |
5 | 4 + 1 | 読 実行 | r-x |
4 | 4 | 読 | r– |
3 | 2 + 1 | 書実行 | -wx |
2 | 2 | 書 | -w- |
1 | 1 | 実行 | –x |
0 | 0 | なし | — |
シェルスクリプト:変数の宣言、代入、計算、引数など
#! /bin/bash #<-bashを使用します
#Comment can be written with hash # #コメントはハッシュタグでかけます
#Hello worldです
echo “Hello World”
# declare variance
myName=”Tanaka”
declare -r NUM1=5
num2=4 #変数にはいろいろな宣言方法があります
num3=$((NUM1+num2)) # basic arithmetic
num4=$((NUM1-num2))
num5=$((NUM1*num2))
num6=$((NUM1/num2))
echo “5+4=$num3”
echo “5-4=$num4”
echo “5*4=$num5”
echo “5/4=$num6” #普通に算数もできます
echo $((5**2))
echo $(( 5%4 ))
# +=, ++, —
rand=5
let rand+=4
echo “$rand”
echo “rand++ = $(( rand++ ))” # show before increment
echo “++rand = $(( ++rand ))” # increment before show
#++や–なども使えますが、実行される順序に注意しましょう。
# you can use Python (here I use Python 3.x)
num7=1.2
num8=3.4
num9=$(python -c “print($num7+$num8)”)
echo $num9
#なんと、pythonがそのまま使えます
# EOF sentence
cat <<EOF
This text
prints on
many lines
EOF
# EOFで囲った間の文章がひとまとまりとみなされます。
今回、bashのシェルスクリプトのコードは以下の動画を参考にしました。
(https://www.youtube.com/watch?v=hwrnmQumtPw&t=427s )
いま読むべき記事
本ブログでは、pythonをはじめとしたプログラミングに関する有益な情報をわかりやすく発信しています。
意外と知らない.bashrcと.bash_profileのつかいわけなど、ぜひ読んでみて下さい!


私はいわゆる教養と呼ばれているような情報を、このブログで発信してきました。
皆さんも、ぜひこのブログを読んで教養を高めてみてください。
留学なし2週間でTOEFL100点をとった勉強法はこちらご覧いただけます。
英語を学ぶと収入がアップしたり、留学のチャンスが出てきたりしますよ!

今年のはじめに話題になった「第三次世界大戦」っていったいなんだったんでしょうか?
詳しくはここをチェックしてみてください。

パリの美術館が10万作品を無料で公開して話題になりました。

しかし、肝心のサイトがフランス語で書かれており、ダウンロード方法がわかりにくい状況です。
そこで、画像を使って非常に丁寧にダウンロード方法をまとめました。
「わかりやすい」との反響もたくさんいただいたので、ぜひチェックしてみてください。

武蔵美は五美大展にも出展していましたね。

コメント