文章标题

来源:互联网 发布:雅思是什么 知乎 编辑:程序博客网 时间:2024/06/05 02:08

date

~$ date +%Y-%m-%d+%H:%M:%S2016-01-28+09:39:55~$ date +%Y-%m-%d --date="-1 day"2016-01-27

Custom Command

  1. 在~/.bashrc中添加alias命令,如:alias ll=”ls -al”
  2. source ~/.bashrc使之立即生效

Simple Tutorial

该section节选于C语言中文网-Shell教程

变量

  1. 定义变量时,变量名不加美元符号($),注意:变量名和等号之间不能有空格
  2. 使用一个定义过的变量,只要在变量名前面加美元符号($)即可,变量名外面的花括号是可选的,加不加都行,加花括号是为了帮助解释器识别变量的边界,推荐给所有变量加上花括号,这是个好的编程习惯。
  3. 使用 readonly 命令可以将变量定义为只读变量,只读变量的值不能被改变。
  4. 使用 unset 命令可以删除变量,注意:unset 命令不能删除只读变量
  5. sh里没有多行注释,只能每一行加一个#号。可以把这一段要注释的代码用一对花括号括起来,定义成一个函数,没有地方调用这个函数,这块代码就不会执行,达到了和注释一样的效果。
your_name="DaShuaiBi"echo $your_nameecho ${your_name}readonly your_name#your_name="ShaBi" #wrongname="liuxijun"unset name #not "unset $name"#unset your_name # wrong

变量替换
Shell运算符:Shell算数运算符、关系运算符、布尔运算符、字符串运算符等

特殊变量

变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是12。 $# 传递给脚本或函数的参数个数。 $* 传递给脚本或函数的所有参数。 $@ 传递给脚本或函数的所有参数。被双引号(” “)包含时,与 $* 稍有不同,这里会讲到。 $? 上个命令的退出状态,或函数的返回值。 $$ 当前Shell进程ID。对于 Shell 脚本,就是这些脚本所在的进程ID。

echo

-e 表示对转义字符进行替换。如果不使用 -e 选项,将会原样输出。
Shell echo命令
shell printf命令:格式化输出语句

字符串

单双引号

单引号字符串:不转义且内部不解释
双引号字符串:转义且解释内部变量

拼接字符串

your_name="qinjx"greeting="hello, "$your_name" !"greeting_1="hello, ${your_name} !"echo $greeting $greeting_1

获取字符串长度

string="abcd"echo ${#string} #输出 4

提取子字符串

string="alibaba is a great company"echo ${string:1:4} #输出liba(1:1+4)

查找子字符串

string="alibaba is a great company"echo `expr index "$string" is` #输出3

数组

bash支持一维数组(不支持多维数组),并且没有限定数组的大小。类似与C语言,数组元素的下标由0开始编号。获取数组中的元素要利用下标,下标可以是整数或算术表达式,其值应大于或等于0。
Shell数组:shell数组的定义、数组长度

控制语句

Shell if else语句
Shell case esac语句
Shell for循环
Shell while循环

其他

ubuntu14.04安装最新版本的cmake:http://yjyj.net/learn/centos/4606.html
ubuntu下安装opencl: http://www.cmnsoft.com/article.php?id=50
http://blog.csdn.net/vblittleboy/article/details/8979288
http://www.aichengxu.com/view/8409
opencl官网:https://www.khronos.org/opencl/
ubuntu安装gpuarray: http://deeplearning.net/software/libgpuarray/installation.html
tensorflow与spark结合:http://geek.csdn.net/news/detail/53369

1 0