可执行文件 .sh 开发

创建可执行文件

  1. 新建 run.txt 文件;
  2. 编辑内容并保存;
  3. 修改后缀名变为 run.sh 文件;
  4. 修改文件权限 chmod 755 run.sh
  5. 双击文件执行;

常用语句

# 定义脚本执行器
#!/usr/bin/env/bash
#!/usr/bin/env/zsh

# 用app新开终端执行某命令文件
open -a iTerm.app "./runsh"

# 命令执行完不关闭终端
exec /bin/bash

路径变量

# dirname $0,取得当前执行的脚本文件的父目录
basepath=$(cd `dirname $0`; pwd)

# 打印当前路径
currentPath=$(pwd)
echo "当前文件夹路径: $currentPath"

# 进入到temp所在的目录
cd ${basepath}/works/2018OnlyShare

示例文件

#!/usr/bin/env/bash
    
# 确保脚本抛出遇到的错误
# set -e

echo "请选择本地调试 or 打包上传"
select type in "run" "build" "push"; do
break
done
echo "你已选择 $type"

# 运行本地项目
if [ $type == "run" ]
then
  echo "请选择你想运行的文件目录:"
  select catalog in "css" "javascript" "question"; do
  break
  done
  echo "你已选择 $catalog"

  # 进入打包文件
  cd $catalog/

  # build文件
  npm run dev

# 选择打包文件
elif [ $type == "build" ]
then
  echo "请选择你想打包的文件目录:"
  select catalog in "css" "javascript" "question"; do
  break
  done
  echo "你已选择 $catalog"

  # 进入打包文件
  cd $catalog/

  # build文件
  npm run build

  # 回到notes目录下
  cd ../

# 上传到git仓库
elif [ $type == "push" ]
then
  git add .
  git commit -m "新增文档"
  git pull
  git push
  echo "notes文件上传成功"
fi

# 命令执行完不关闭终端
exec /bin/bash

package.json 配置示例

{
  "scripts": {
    "bash": "bash deploy.sh"
  }
}