Linux学习(四)
专题:shell与bash
1、内置命令 type
查看命令是bash命令还是非bash命令
比如
或者列出所有有关的
但是对于cd
指出这是一个shell内置命令。
2、查看变量
或者
再看看MAIL和HOME
设置一个变量。比如,myname=wang66
变量内容是不可以带有空格的,除非使用引号
追加内容使用冒号
取消变量:unset命令
单引号与双引号的区别:
单引号内的变量被解释成字符串,双引号的变量被解释成变量内容。
3、查看环境变量
evn (environment的缩写)
输出了所有的环境变量,包括MAIL PATH之类的。
5、生成一个随机数(娱乐)
这里生成了一个随机数(我还乘以了102),打印出来
6、查看所有变量(已有的)
看,其中就包含我们刚才随机出来的n。
6、把自定义的变量转换为环境变量。
export 变量名
或者单独一个export显示出所有变量
看到我的随机数n了吗?
7、读取一个变量(键盘输入)
read指令
用法 read -p “一些提示” -t ‘秒数’ 变量名
8、声明一个变量
使用declare(声明的意思)来声明
比如:
declare -i number1=1024 //声明一个整数
declare -x number2=2048 //声明一个外部(环境)变量number2
declare -r number3=512//声明一个只读变量(只能设置但不能修改)
这一串由以下示例显示
声明一个数组是 -a
我们可以很明显的看到linux数组是动态数组,并且被忽略的都是“”什么也没有。
9、用户限额
在root账户下,是没有限制的,可以随意使用任何资源。
10、变量内容的修改
#表示删除后面的变量(*代表通配符)
意思是and以及前面的内容全部删除。
删除第一个空格之前的所有内容
但是要记住他会删除最短的那个字符串。比如最短匹配有* (空格)的是Money
但是如果使用两个#,
直接删除最长匹配。
要注意这个是从前向后删除。
从后向前删除是%。
比如
把:之后的内容全部删除。
同样地,%%是最长匹配的从后往前删除。
然后是替换
可以这样记忆 变量名/要替换的部分/新的部分
而且要记住这样只能替换一个
如果要替换全部,就是:变量名//要替换的部分/新部分
变量名-字符串 模式是一个测试表达式。
比如
变量名如果是存在的,那么输出变量内容。否则输出后面的字符串。
空性测试。
就是在-前面加一个:,因为一个变量如果是空的,那么依然看不到输出,但是这种情况下就可以
变量名:-sometring 当输出空时就可以看到somestring
就像上面那样,non是一个空串。
与此相像的还有+号。
只要变量被声明过就能显示上字符串,如果带:就是非空时添加。
?是带有测试性质的表达式,如果变量不存在,就显示附加的字符串。
11、别名
通过alias可以显示出所有的别名
我们可以设置一个别名
比如吧la设定为 ls -al
去掉一个别名,把刚才的la去掉。
历史命令
显示了最近使用的一些命令
利用历史消息可以快捷的使用命令
比如!273 是执行最近使用的第273个命令(alias)
执行最近一条:!!
执行最近的以a开头的命令
13、设置终端机
stty命令