脚本

作者: 宣泽彬 | 来源:发表于2018-05-07 23:10 被阅读13次

脚本:给计算机照着做的“剧本”(这是对脚本的感性认识)

脚本不是技术术语,只是一个单词(Script),因此无法很好地定义它。

用git bash写一个脚本

if [ -d $1 ]; then
  echo 'error: dir exists'
  exit
else
  mkdir $1
  cd $1
  mkdir css js
  touch index.html css/style.css js/main.js
  echo 'success'
  exit
fi

通过运行这个脚本,就会在当前目录中创建一个里面含“index.html”、“/css/style.css”、“/js.main.js”的目录demo
若目录创建成功,则提示“success”,否则提示“error: dir exists”


从上述脚本中可以看出,在git bash中“判断目录是否存在”变量名文件的命令为

if [ -d $1 ]; then 

else

fi

在git bash中对命令的格式十分苛刻,少一空格或多一空格都会出错

另外,可以通过在.bashrc中加入
export PATH = "脚本所在的绝对路径:$PATH"
使得只要在git bash中输入脚本名即可直接运行脚本

exit的用法

exit 0 表示没有错误,返回代码0
exit 1 表示出现错误,返回错误代码为 1
demo && echo '结束'
只有在 demo 成功时,才会执行 echo '结束'
demo || echo '失败'
只有在 demo 成功时,才会执行 echo '结束'

用NodeJS来写同样的脚本

var fs = require('fs')

var dirName = process.argv[2] // 你传的参数是从第 2 个开始的
if (fs.existsSync("./" + dirName))
process.exit(1)
else{
    var way ="./" + dirName
    fs.mkdirSync(way) // mkdir $1
    fs.mkdirSync(way + '/css') // mkdir css
    fs.mkdirSync(way + '/js') // mkdir js
    fs.writeFileSync(way + "/index.html", "<!DOCTYPE>\n" + "<title>Hello</title>\n" + "<h1>Hi</h1>")
    fs.writeFileSync(way + "/css/style.css", "h1{color: red;}")
    fs.writeFileSync(way + "/js/main.js", "var string = " + "Hello World\n" + "alert(string)")

    process.exit(0)
}

但要在git bash运行这个脚本,需要先输入 node再接脚本名称。
如不想输入node,则需要在脚本起始处输入shebang,即以下命令
#!/usr/bin/env node


对于编写NodeJS的脚本,如有不懂的命令
可以查阅以下网址:https://nodejs.org/api/fs.html


本教程版权归宣泽彬所有,转载须说明来源

相关文章

  • 自瞄3.15

    【脚本开关→】开【←脚本开关】 【脚本版本→】通用技能自瞄3.15【←脚本版本】 【脚本关闭公告→】脚本已更新.....

  • 自瞄3.16

    【脚本开关→】开【←脚本开关】 【脚本版本→】通用技能自瞄3.16【←脚本版本】 【脚本关闭公告→】脚本已更新.....

  • 为什么会有人说引流脚本不靠谱?原来是还没了解透彻引流脚本

    引流脚本,什么是引流脚本?引流脚本怎么样?引流脚本好用吗?引流脚本靠谱吗?引流脚本是骗局吗?引流脚本效果好吗?引流...

  • Kettle11:Kettle脚本控件

    本章讲解以下三种脚本的案例01 javascript脚本02 java脚本03 执行SQL脚本 脚本 1.脚本是转...

  • 进程守护脚本

    进程守护脚本 新建脚本 编辑脚本 添加可执行权限 启动脚本

  • DoTween

    /* 项目: 脚本:校园导航管理脚本 脚本:此脚本挂载在SchoolMenuPanel上 脚本:点击二级导航按钮,...

  • UI Recorder之Android自动化

    简单介绍 之前已经进行了Web的脚本录制,脚本回放,及脚本运行。这次进行Android端脚本录制、脚本回放,及脚本...

  • 宝塔Linux面板命令大全

    【安装宝塔】centos安装脚本 Ubuntu/Deepin安装脚本: Debian安装脚本 Fedora安装脚本...

  • 透视3.16

    【脚本开关→】开【←脚本开关】 【脚本关闭公告→】服务器更换..【←脚本关闭公告】

  • 宝塔常用命令

    安装宝塔 Centos安装脚本 Ubuntu/Deepin安装脚本 Debian安装脚本 Fedora安装脚本 管...

网友评论

      本文标题:脚本

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