初识shell
来源:互联网 发布:手机幻灯片制作软件 编辑:程序博客网 时间:2024/06/07 03:51
这篇文章只是记录自己初学shell的笔记,读者可以直接去看这篇文章Shell脚本编程30分钟入门
变量赋值,等号周围不能有空格;定义变量不用
$
使用变量要加$
作为可执行程序
chmod +x test.sh./test.sh
注意,一定要写成./test.sh,而不是test.sh,运行其它二进制的程序也一样,直接写test.sh,linux系统会去PATH里寻找有没有叫test.sh的,而只有/bin, /sbin, /usr/bin,/usr/sbin等在PATH里,你的当前目录通常不在PATH里,所以写成test.sh是会找不到命令的,要用./test.sh告诉系统说,就在当前目录找。
IntelliJ IDEA编写shell script时,IDE就会提示变量加花括号。
每一行加个#符号太费力了,可以把这一段要注释的代码用一对花括号括起来,定义成一个函数,没有地方调用这个函数,这块代码就不会执行,达到了和注释一样的效果。
单引号和双引号区别:(和php类似)
单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的
单引号字串中不能出现单引号(对单引号使用转义符后也不行)
双引号里可以有变量
双引号里可以出现转义字符还要注意,sh里的
if [ $foo -eq 0 ]
,这个方括号跟Java/PHP里if后面的圆括号大不相同,它是一个可执行程序(和cd, ls, grep一样),在CentOS上,它在/usr/bin目录下,正因为方括号在这里是一个可执行程序,方括号后面必须加空格,不能写成if [$foo -eq 0]
.和source的意思一样 . ./bin/startup.sh sh startup.sh
自动部署gradle项目代码到云主机
#!/bin/shcd /Users/gary/Documents/XXXsh gradlew warcd project_name/build/libsscp project_name.war root@ip:~ssh root@ip "cd /apps/svr/apache-tomcat-8.0.32/webapps;rm -f project_name.war;rm -rf project_name;mv ~/project_name.war project_name.war"
[参考]
Shell脚本编程30分钟入门
SSH 在本地执行远程机器上的命令
- Shell初识
- Shell初识
- 初识shell
- 初识Shell
- 初识SHELL
- 初识shell
- shell 初识
- 初识shell
- 初识shell
- 初识Shell
- 初识Shell
- shell编程一:初识shell
- 初识 shell 脚本
- 初识shell编程
- 初识 shell 脚本
- 初识linux的shell
- 初识shell编程
- 初识 linux shell
- Android多文件下载时多个进度条同时更新
- 我的博客即将入驻“云栖社区”,诚邀技术同仁一同入驻。
- android sharedpreferences
- 在不同的维度做防御
- ajax请求中文乱码(解决)
- 初识shell
- Cadence 中贴片元件焊盘的制作
- 复杂对象的本地持久化
- <机器学习练习>朴素贝叶斯法
- java简介
- art 模式 android runtime
- linux积累(1)--root用户切换
- TimesTen 数据库复制学习:3. 配置Classic Replication单表复制
- ZOJ3870(位运算与思维)