实现判断服务器是否有git并拉取代码的shell脚本

判断当前服务器是否有git,没有的话使用yum install安装,然后切换至普通用户,创建目录,并且进入新创建的目录,git clone代码

#!/bin/bash

while getopts ":u:" opt; do
  case $opt in
    u)
      username=$OPTARG
      ;;
    \?)
      echo "无效的选项: -$OPTARG" >&2
      exit 1
      ;;
    :)
      echo "选项 -$OPTARG 需要一个参数" >&2
      exit 1
      ;;
  esac
done

if [ -z "$username" ]; then
  echo "请使用 -u 选项指定一个普通用户名"
  exit 1
fi

# 检查是否已安装git
if ! [ -x "$(command -v git)" ]; then
  echo 'git is not installed. Installing git...'
  yum install -y git
fi

# 切换到指定用户并执行创建new目录和git clone
su - "$username" -c '
  mkdir new
  cd new
  git clone xxx -b xxx
'

你可能感兴趣的:(linux运维,linux,shell)