#!/bin/sh configPath=.vscode/.env function get_config() { local configName=$1 sed -n 's/^[[:space:]]*'$configName'[[:space:]]*=[[:space:]]*\(.*[^[:space:]]\)\([[:space:]]*\)$/\1/p' $configPath }
function set_config() { local configName=$1 local confgValue=$2 sed -i "" -e "s:$configName=.*:$configName=$confgValue:g" ${configPath} } function publish_draft(){ addline=$(git status | awk '/Untracked/{print NR}') mpath="" if [ "$addline" = '' ]; then echo "没有新添加的文件,更换为当前修改的最后一个文件" # 取最后一行 all_lines=$(git status | awk '/modified/{print $0}' | awk -F "[:]" 'END{print NR}' ) if [ $all_lines -gt 0 ]; then read -p "选取需要更新的文件的行数(从1开始):" line mpath=$(git status | awk '/modified/{print $0}' | awk -F "[:]" 'NR=="'"$line"'"{print $2}' ) else mpath=$(git status | awk '/modified/{print $0}' | awk -F "[:]" 'END{print $2}' ) fi else echo "取新添加的文件" let line=addline+2 mpath=$(git status | awk 'NR=="'"$line"'"{print}') fi read -p "markdown文件变动目录:[$mpath],继续执行下一步,回车键继续[y/n]" isContinue set_config MarkdownFilePath $mpath Digest=$(get_config Digest) read -p "是否更换二级小标题:[$Digest],是否更换,回车键不更换[y/n]" isContinue # 转成小写 iscontinue=$(echo $isContinue | tr '[A-Z]' '[a-z]') if [ "$iscontinue" = 'y' ]; then read -p '开始更换二级小标题:' Digest set_config Digest $Digest else echo "不更换二级小标题" fi