这几天在琢磨了好久,觉得入坑shell还是有点必要,#毕竟算个入门语言,我也是个小白。
shell是什么
shell是什么:XXX.sh
#我也不知道shell是个啥,等我精通了在回来填上啊
反正不管啥, .sh
结尾的肯定是shell程序。
先建个文件: vim example.sh
#! /bin/bash
A=666
B=$(ls -l)
mydir=/home/root/mk
echo $A
#! 跟shell的完整路径,作用显示后期命令用什么执行,bash,sh,nologin,tcsh,csh,如果不写,会以当前shell执行
#单独一个井号,就是普通的注释
保存后chmod +x
修改权限使它能够执行
执行的话./example.sh
bash example.sh
shell变量:
例: A=666 # A为变量,自定义变量要字母或下划线开头,和数字一起组成,注意区分大小写
临时变量:内部定义,只限于内部程序,对其他的程序不可见
永久变量:不会因shell执行完而消失
echo $PATH
#echo 相当于打印出来 而使用变量前要加$
变量赋值时
int=100
#中间没有空格
B=$(ls -l)
# 赋值为命令 ls -l
amon=‘data’
#命令结果复制
mydir=/home/root/mk
#赋值为路径
echo Today is $DAY day => Today is 5 day
echo Today is ${DAY}day =>today is 5day
set
#列出所有变量
set | grep DAY
#查询过滤出变量
unset NAME
#删除变量
NAme=“Mike ron ”
# 单双引号都行
单引号内容原封不动给了变量
双引号取消空格作用
特殊符号的含义保留
位置变量和特殊变量
位置变量: ls -l
# -l为位置参数或位置变量
特殊变量:是系统设置的
$*
程序所以参数
$#
程序的参数个个数
$$
程序的PID
$!
执行上个后台指令的PID
$?
执行上个指令的返回值
#####此文纯属小白笔记,有不对之处大佬使劲喷,杠精请绕过,#####