シェルスクリプトまとめ

シェルスクリプト完全初級レベルですが、覚えたコマンドなど少しずつ蓄積していく記事にしたいと思います。

スポンサーリンク

はじめに

ファイル名

ファイル名.sh

ファイル冒頭

#!/bin/bash

変数

moji_hensu="abc"
num_hensu=123

制御文

if文

if [ 条件式]; then
 echo "条件式はtrueです"
else
 echo "条件式はfalseです"
fi

条件式

比較 = (equal)

if [ $var_x -eq $var_y ]; then

比較 NOT = (not equal)

if [ $var_x -ne $var_y ]; then

比較 < (less than)

if [ $var_x -lt $var_y ]; then

比較 <= (less than or equal to)

if [ $var_x -le $var_y ]; then

比較 > (greater than)

if [ $var_x -gt $var_y ]; then

比較 >= (greater than or equal to)

if [ $var_x -ge $var_y ]; then

ディレクトリ存在確認

#!/bin/bash
DIR="test_dir"
if [ -d ${DIR} ]; then
  echo "存在する"
fi

ファイル存在確認

#!/bin/bash
FILE="test_file"
if [ -f ${FILE} ]; then
 echo "存在する"
fi

文字列操作

awk

記載中

MySQL

MySQLに接続してクエリを投げて結果をループで処理する

#!/bin/sh

#データベース設定
DATA_BASE_USER=xxx
DATA_BASE_PATH=xxx
DATA_BASE_NAME=xxx
DATA_BASE_HOST=xxx

SQL_QUERY="select id from test_tables;"

result=`mysql -u${DATA_BASE_USER} -p${DATA_BASE_PATH} -A ${DATA_BASE_NAME} -h ${DATA_BASE_HOST} -e "${SQL_QUERY}"`

#結果でループ
if [[ $? -eq 0 ]]; then
 for value in ${result}
 do
  echo ${value}
 done
else
 echo "fail to select from mysql."
fi