美文网首页程序员
初学bash,第一次的脚本。

初学bash,第一次的脚本。

作者: 范德萨范德萨范德萨 | 来源:发表于2016-11-19 03:04 被阅读51次

前言:

在写APP的时候,每当我需要创建一个模块的时候,我总会创建一个以该模块名称命名的文件夹,然后在创建3个子文件夹,分别为Controller、Model、View。手动创建的过程中,我不禁思考,是不是这样太呆板了,有违程序员的行事风格。所以我想到了使用终端命令行创建,然而我所做的第一步当然是去百度常用命令行……
嗯,我就是辣么菜-_,-!
然后我再想,是不是可以更加自动化一点,之前有在打开tomcat的时候使用sh命令来执行sh后缀的脚本文件。然后就继续了解关于这种脚本如何去写?如何去用?最后决定学习bash。

正文:

原本的需求就是自动化创建项目文件夹,但是涉及到想创建的文件夹名字各不相同,只创建一个又太没劲,因此牵扯到需要用bash写函数,如此一来过于复杂,决定选择先从平时常用的几个git操作入手,毕竟他们不需要调用别的函数。
先用命令行进项目根目录创建了pull.bash和push.bash两个文件,然后用Sublime Text作为编辑器开始写代码:
#!/bin/bash

#进入本项目目录
cd `dirname $0`

# 1
git add .

# 2 获取当前时间,来为commit命名
commit_time="`date +%Y-%m-%d`"" ""`date +%H:%M:%S`"
git commit -m "$commit_time"

# 3 推送
git push origin master
#!/bin/bash
#进入本项目目录
cd `dirname $0`

#拉取
git pull origin master
代码的内容很简单,上面为push,下面为pull。commit命名采用当前时间以此区分。
写好代码该怎么运行呢?
  1. 使用chmod +x xxx.bash,授予脚本权限,不然可能会出现此错误:
-bash: /Users/ctc/Desktop/xxx.bash: Permission denied
  1. 将2个脚本文件的打开方式修改成终端打开,这样双击就能执行,或者直接拖到终端里按下回车即可:
pull脚本.png push脚本.png
我估计这代码也就我本地环境下用用,因为我已经在之前输过账号密码,获得了这个仓库的权限,至于如何自动输入账号密码?如何来解决pull、push失败?这些问题还是留在之后继续学习中探索研究。

相关文章

  • 初学bash,第一次的脚本。

    前言: 在写APP的时候,每当我需要创建一个模块的时候,我总会创建一个以该模块名称命名的文件夹,然后在创建3个子文...

  • Bash基础知识

    在上一篇文章《不过时的技术-Bash脚本》中,我们简单介绍了Bash脚本,并且学会如何编写、运行一个Bash脚本。...

  • Linux书本笔记

    初学linux,啃了书记个笔记。 《Linux命令行与shell脚本编程大全》 第3-5章 3 基本的bash s...

  • 基础Bash Shell脚本编程

    在bash脚本的第一行要写上#!/bin/bash来告诉系统该脚本是bash脚本这一行在Linux中被称为sheb...

  • shell脚本简单的基本语法

    1.脚本的格式要求 1.脚本以#!/usr/bash开头,表示编写的脚本以bash这种终端解释器来解析。 2.脚本...

  • 12)Shell 编程

    脚本格式要求 1.脚本以 #!/bin/bash 开头 (表示用 bash 来进行解析) 2.脚本需要有可...

  • bash脚本编程

    bash脚本之编程交互 脚本参数 用户交互,通过键盘输入数据,从而完成变量的赋值操作 bash -n 脚本 检查...

  • 第1节 shell脚本创建执行和输出

    #shell脚本创建执行和输出 1.shell脚本开头 #!/bin/bash /bin/bash 是Ba...

  • 入门:脚本

    总结 脚本就是给机器一行一行执行的文本 Bash 脚本有Bash 脚本的语法,Node.js 脚本有 JS 语法 ...

  • bash脚本内部变量

    bash脚本内部变量 $BASH bash的程序文件的路径,如/bin/bash $BASH_ENV 该环境变量保...

网友评论

    本文标题:初学bash,第一次的脚本。

    本文链接:https://www.haomeiwen.com/subject/ftwspttx.html