Shell&Cshell脚本-实现gitlab添加删除更新

shell

操作test文件夹,实现在gitlab添加删除更新

/home/Scripts/shell/test
#!/bin/bash
read -p "Which action do you want to do?(Add/Update/Delete):" flag
if [[ $flag == "Add" || $flag == "A" || $flag == "Update" || $flag == "U" || $flag == "Delete" || $flag == "D" ]];then
	if [ `pwd | grep ".*/liuy/.*/" | wc -l` ];then
		casename=`pwd | sed 's|.*/shell/||'`
		if [[ $flag == "Delete" || $flag == "D" ]];then
			read -p "Please confirm again that you want to delete this testcase?(Y or N): " tmp_flag
			if [[ $tmp_flag == "Y" ]];then
				cd ..
				rm -rf $casename
			elif [[ $tmp_flag == "N" ]];then
				exit
			else
				echo "Invalid input !"
			fi
		fi
		read -p "Please enter your gitlab comments: " comments
		git pull
		git add .
		git commit -m "$comments"
		git push
	else
		echo "Please cd into your case directory"
	fi
else
	echo "Invalid input !"
	exit
fi

cshell

#! /bin/csh
echo -n "Which action do you want to do? (Add/Update/Delete):"
set flag = ($<) //从键盘读取
if !($flag == "Add" || $flag == "A" || $flag == "Update" || $flag == "U" || $flag == "Delete" || $flag == "D") then
	echo "Invalid input!"
	exit
endif
if (`pwd | grep ".*/tests/reg/.*/" | wc -l`) then
	set case_owner = `whoami`
		set case_name = `pwd | sed 's|.*/tests/||'`
	set casename = `pwd | sed 's|.*/tests/reg/.*/||'`
		set function = `echo $case_name | sed 's|reg/||' | sed 's|/.*$||'`
	if($flag == "Delete" || $flag == "D") then
		echo -n "\nPlease confirm again that you want to delete this testcase? (Y/N):"
	set tmp_flag = ($<)
		if !($tmp_flag == "Y" || $tmp_flag == "N") then
			echo "Invalid input!"
			exit
		else if($tmp_flag == "N") then
			exit
		else
			cd ..
			rm -rf $casename
		endif
	endif
	echo "\nPlease enter your gitlab comments:"
	set comments = ($<)
	git pull
	git add .
	git commit -m "$comments"
	git push
	if($flag == "Add" || $flag == "A") then
		echo "\nFinish adding $case_name in /home/*.list"
		echo "$case_name $case_owner $function" >> /home/*.list
	else if($flag == "Delete" || $flag == "D") then
		echo "\nFinish deleting $case_name in /home/*.list"
		sed -i "s|$case_name .*||g" /home/*.list
		sed -i '/^$/d' /home/*.list
	endif
else 
	echo "Please cd into your case directory!"
endif
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Git指令的Shell脚本,能够快速便捷地管理Git库,包括添加修改、提交修改、显示库状态、推送到远程库、从远程库更新到本地、版本恢复等操作。 使用方法: 1. 在Linux系统中,将本文件放在Git库目录下,利用Shell运行本文件; 2.在windows系统中,需下载安装与操作系统相对应的Git软件,并将本文件放在Git库目录下,双击即可运行。 运行示例: Please choose the first letter of options. [Add|Commit|Diff|Fetch|Exit|Help|Log|Push|User|Reset|Status]? h A: Add all changes to repository. C: Commit all changes to repository. D: Show differences between current version with HEAD->. E: Exit shell script. F: Fetch origin/master and merge. L: Show latest two-weeks logs of repository. P: Push commissions to origin/master. U: User command mode(Press ‘Enter’ to exit). R: Reset current version according version_id. S: Show status of repository. Please choose the first letter of options. [Add|Commit|Diff|Fetch|Exit|Help|Log|Push|User|Reset|Status]? s On branch master Your branch is up-to-date with 'origin/master'. Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git checkout -- ..." to discard changes in working directory) modified: Git.sh modified: PyNote/PyNote_2.md no changes added to commit (use "git add" and/or "git commit -a") Please choose the first letter of options. [Add|Commit|Diff|Fetch|Exit|Help|Log|Push|User|Reset|Status]? a On branch master Your branch is up-to-date with 'origin/master'. Changes to be committed: (use "git reset HEAD ..." to unstage) modified: Git.sh modified: PyNote/PyNote_2.md
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值