初学SHELL

https://github.com/Snailclimb/JavaGuide/blob/master/docs/operating-system/Shell.md#shell-编程的-hello-world

初学shell
### 输入Shell 的hello word
1: touch helloworld.sh 
2: chmod +x helloworld.sh //给执行权限
3: 打开文件输入 echo "helloworld"

### 规则
1: 自定义变量,仅在当前shell实例中有效,其他shell不能访问局部变量
2: Linux已定义的环境变量,可以直接使用 env 命令可以查看所有的环境变量,而set命令既可以查看环境变量也可以查看自定义变量
3: shell 变量

### 使用自定义变量,使用=号赋值的时候,等号两边不能存在空格
hello="helloworld"

### shell变量名称规则
1:变量名只能使用英文字母,数字,下划线,首字母不能用数字开头,可用 _开头
2:变量名中间不能存在空格,可以使用下划线
3:不能使用标点符号
4:不能使用bash里面的关键字(可用help命令查看保留关键字)

### 变量取值符号 $
name='小明'
hello="hello:"$name"!"
echo $hello

## 获取字符串长度
name="xiaoming"
1: echo ${#name} 
2: expr length "$name"

## expr命令表达式中的运算符左右必须包含空格,如果不包含空格,将会输出表达式本身
expr 5+6    // 直接输出 5+6
expr 5 + 6       // 输出 11
expr 5 +6 //错误语法

* 需要使用 \符号进行转义操作

## 截取子字符串
var="http://www.runoob.com/linux/linux-shell-variable.html"

s1=${var%%t*}#h
s2=${var%t*}#http://www.runoob.com/linux/linux-shell-variable.h
s3=${var%%.*}#http://www
s4=${var#*/}#/www.runoob.com/linux/linux-shell-variable.html
s5=${var##*/}#linux-shell-variable.html

### shell数组
array=(1 2 3 4 5);
# 获取数组长度
length=${#array[@]}
# 或者
length2=${#array[*]}
#输出数组长度
echo $length #输出:5
echo $length2 #输出:5
# 输出数组第三个元素
echo ${array[2]} #输出:3
unset array[1]# 删除下表为1的元素也就是删除第二个元素
for i in ${array[@]};do echo $i ;done # 遍历数组,输出: 1 3 4 5 
unset arr_number; # 删除数组中的所有元素
for i in ${array[@]};do echo $i ;done # 遍历数组,数组元素为空,没有任何输出内容

linux常用基本命令
### 给文件权限 所有执行权
1: chown 777 文件名
### 让脚本可以执行
2: chmod +x 文件名

linux默认寻找执行文件位置
1:  /bin, /sbin , /usr/bin ,/usr/sbin 
linux常用环境变量
HOME:当前用户主目录
HISTSIZE:历史记录数
LOGNAME:当前用户
HOSTNAME: 主机名称
SEHLL:当前用户shell类型
LANGUGE: 语言相关环境变量
MAIL:当前用户的右键存放目录
PS1:基本提示符,对于root用户是#,对于普通用户是$

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值