FiFiWiki2

FiFiWikiの第2版

ユーザ用ツール

サイト用ツール


unix

linux

linuxのフォルダと配置について

自作のアプリケーションの設置方法が全く分からないので調査。 色々流派があり決まりはないみたい。個人的には/home/bin, /home/lib等に入れるとよさそうだ。 - Linuxのディレクトリ構造(一覧)を理解する - なぜ,/var や /etc が /etc や /cfg というディレクトリ名ではないのか?

ヒアドキュメント

soracom.confに書き出される。変数展開もされる。

snippet.bash
# MAKE supervisor conf
cat << EOS > soracom.conf
[program:soracom]
directory=${HOME}/bin/soracom
command=sh /opt/soracom/connect_air.sh
redirect_stderr=true
stdout_logfile=/var/log/supervisor/soracom.log
user=root
EOS

変数に代入する

snippet.bash
HOGE=$(cat << EOS
hoge
fuga
EOS
)

Bashスクリプト

  • メモ “${HOME}“展開される. '${HOME}'展開されない
snippet.bash
#!/bin/bash
set -C #上書き防止
set -eu
 
CMDNAME="basename $0"
echo "[ INFO ] CMDNAME ${CMDNAME}"
 
SCRIPT_DIR=$(cd $(dirname $0);pwd)
echo "[ INFO ] SCRIPT_DIR ${SCRIPT_DIR}"
# ====================================================================
# Check Option 
# cmd -t
# ====================================================================
FLG_TEST="FALSE"
 
while getopts t OPT
do
  case $OPT in
	"t" ) FLG_TEST="TRUE" ;;
	 *  ) echo "Usage ${CMDNAME} [-t]" 1>&2
		exit 1 ;;
  esac
done
 
if [ "$FLG_TEST" = "TRUE" ]; then
  echo "[ INFO ] TEST MODE"
fi
 
# ====================================================================
# Check Bash
# ====================================================================
if [ $SHELL == "/bin/bash" ];then
  echo "[ OK ]Im : bash"
else
  echo "[ NG ]Im ${SHELL} . Not /bin/bash"
  echo "[Warning] Need Bash.  Exit.."
  exit 1
fi
 
# ====================================================================
# Check User
# ====================================================================
if [ $(whoami) == 'root' ];then
    echo "[ NG ]Fail.. Im root.."
    echo "[ NG ]Please Input => bash setup.sh"
    echo "[ NG ]Not use sudo .."
    exit 1
else
    echo "[ OK ]Im $(whoami)..  not root."
fi
 
# ====================================================================
# COMMAND EXISTS
# ====================================================================
if type aws > /dev/null 2>&1;then
  echo "[ OK ]Exists aws command."
  echo "[ OK ]$(aws --version)"
else
  echo "[ NG ]Fail! Uninstall aws command."
  exit 1
fi
 
# ====================================================================
# CONFIG key
# ====================================================================
CONFIG_KEY="${BASE_DIR}/configkey"
. ${CONFIG_KEY}
 
# ====================================================================
# EXISTS DIR
# ====================================================================
if [ ! -e ${BASE_DIR} ];then
  echo "[ INFO ] DIR ${BASE_DIR} is nothing"
fi
 
# ====================================================================
# mkdir
# ====================================================================
mkdir -p ${PHOTOS_DIR}
 
# ====================================================================
 
echo "[ OK ] Finish! Setup!"
unix.txt · 最終更新: 2017/10/22 06:14 by fifi