shell脚本学习001

前言

作为一个非科班出身的开发工程师,需要恶补的学科和知识其实还是很多的,计算机网络,算法,数据结构等等。做iOS很久最近想到一个问题,当我们写模型的,面对文档的一大串json,要手写建造模型其实是一件很浪费时间的事情(当然了,听说oc可以用Mantle)。

可怕的模型转换

于是乎想自己借着这个机会接触下脚本,搞一个生成模型文件的shell脚本。本系列文章纯属学习笔记,所以希望读者带着批判的眼神来看,多多指导和给出意见~

开始

hello world !

一切语言于这个哈喽沃德,lets begin with the easy way!

#!/bin/bash
echo "Hello World !"

名词解释

  1. #!是一种约定的符号,表示后面使用某一种解释器来执行下面的脚本,所以/bin/bash就是一种解释器。bash是一种shell解释器,常见的还有sh,csh,ksh,tcsh布拉布拉。特别#!/bin/bash必须写在第一行!
  2. echo 是输出语句,输出的内容可以用" "包裹,也可以不用。

运行

保存我们书写的内容到桌面(也可以自己指定)。这里我们先命名为test.sh。打卡终端。cd到桌面目录下。输入./test.sh./表示执行。

# dyd @ saoxianshengs-MacBook-Pro in ~/Desktop [13:32:48]
$ ./test.sh
zsh: permission denied: ./test.sh

WTF:permission denied。百度回来后,我们需要切换权限。操作指令是:
chmod +x scriptName
即键入:
chmod +x test.sh
然后再 ./执行脚本

运行结果

我们再试着加入一个终端输入指令read,执行下面代码:

#!/bin/bash
echo "hello world"
read p
echo 'tokyo cold' = $p

执行:


运行中断,等待输入,按enter执行
输入后得到结果,嗯,这很批判

这里解释下read pread应该是一个关键字,表示中断脚本执行,需要用户在终端中输入内容,按enter结束,p可以理解成临时变量,用来装载输入的内容,后面一行用 $p来使用它的值。

[参考文献]
http://c.biancheng.net/cpp/view/6998.html

你可能感兴趣的:(shell脚本学习001)