一、时间
今天是2025.5.23,记录一下这周Linux学习状况。
二、Linux启动基本命令
见linux学习笔记专栏以前章节内容。
三、基本命令
1.比较符号:
1).-eq 相等
2).-ge 大于等于
3).-gt 大于
4).-lt 小于
5).-le 小于等于
6).编程举例
wang@wang-desktop:~$ mkdir wang1
wang@wang-desktop:~$ cd wang1
//给出赋值
wang@wang-desktop:~/wang1$ init1=1234
wang@wang-desktop:~/wang1$ init2=01234
//检测是否相等
wang@wang-desktop:~/wang1$ test $init1 -eq $init2
//输出检测结果
wang@wang-desktop:~/wang1$ echo $?
//1就是不相等的意思(0为真,1为假)
1
wang@wang-desktop:~/wang1$ int=4
//int 和 2 作比较
wang@wang-desktop:~/wang1$ test $int -gt 2
wang@wang-desktop:~/wang1$ echo $?
0
2.文件操作:
1).编程举例:
wang@wang-desktop:~/wang1$ test -d /home
wang@wang-desktop:~/wang1$ echo $?
0
wang@wang-desktop:~/wang1$ test -d /root
wang@wang-desktop:~/wang1$ echo $?
0
wang@wang-desktop:~/wang1$ ls
//创建文件,测试文件
wang@wang-desktop:~/wang1$ touch 1 2 3
wang@wang-desktop:~/wang1$ ls
//展示文件内容
1 2 3
wang@wang-desktop:~/wang1$ test -f 1
wang@wang-desktop:~/wang1$ echo $?
0
//!运用,实际上结果应该是取反值,因为非符号
wang@wang-desktop:~/wang1$ test ! -f 2
wang@wang-desktop:~/wang1$ echo $?
1
wang@wang-desktop:~/wang1$ test -r 1 -a -s 2
wang@wang-desktop:~/wang1$ echo $?
1
wang@wang-desktop:~/wang1$ ls -l
//查看文件详细内容
总计 0
-rw-r--r-- 1 wang wang 0 2025-05-22 08:12 1
-rw-r--r-- 1 wang wang 0 2025-05-22 08:12 2
-rw-r--r-- 1 wang wang 0 2025-05-22 08:12 3
3.逻辑测试(涉及到脚本编写(vi [filename]):
4.条件判断:
fi是这个脚本结束的标志。
四、例题
例题一、
显示:Do you want to continue:Y or N ;如果键盘输入:N 或 n ,则显示:I will exit;否则输入:Y 或 y ,则显示:I will not exit。
(因为博主编写的主要是大致过程,不要在乎大小写和空格问题哈)
wang@wang-desktop:~/wang1$ vi a.sh
wang@wang-desktop:~/wang1$ chmod u+x a.sh
wang@wang-desktop:~/wang1$ ./a.sh
Do you want to continue: Y or N
Y
I WILL NOTEXIT
//////a.sh代码如下:
#!/bin/bash
#filename : a.sh
echo "Do you want to continue: Y or N"
read ANSWER
if [ $ANSWER = N -o $ANSWER = n ];
then echo "I WILL EXIT"
else echo "I WILL NOTEXIT"
fi
例题二、
处理学习成绩当成绩>=60 表示合格,成绩<60显示不合格。
(这里涉及到最一开始符号比较问题,在shell脚本编写中,大于等于不能直接>= 必须使用-ge)
wang@wang-desktop:~/wang1$ vi b.sh
wang@wang-desktop:~/wang1$ ./b.sh
Please insert your grade:
55
you haven't passed the exam!
wang@wang-desktop:~/wang1$ ./b.sh
Please insert your grade:
100
you have passed the exam!
例题三、
case条件语句:
当键盘输入:China 显示:beijing
当键盘输入:USA 显示:Washington
当键盘输入:British 显示: London
当键盘输入:Russia 显示:Moskow
当和上边的字符串不符合的时 显示 out of my knowledge!
wang@wang-desktop:~/wang1$ vi c.sh
wang@wang-desktop:~/wang1$ chmod u+x c.sh
wang@wang-desktop:~/wang1$ ./c.sh China
Beijing
wang@wang-desktop:~/wang1$ ./c.sh Russiza
Out of my knowledge!
wang@wang-desktop:~/wang1$ ./c.sh Russia
Moskow
wang@wang-desktop:~/wang1$ ./c.sh British
London
wang@wang-desktop:~/wang1$ ./c.sh USA
Washington