Linux Shell
来源:互联网 发布:美容仪推荐知乎 编辑:程序博客网 时间:2024/05/17 21:46
Shell是一个用C语言编写的程序,它被称为用户使用Linux的桥梁。
Shell既是一种命令语言,又是一种程序设计语言。
Shell脚本(Shell Script),是一种为Shell编写的脚本程序。
Shell编程和Java、Pythno等一样。只需要一个文本编辑器和解释工具即可。
常见的Shell有:
Bourne Shell、Bourne Again Shell、C Shell、K Shell、Shell for Root
1.编写shell
vi ./example1.sh
#!/bin/bash
echo “hello shell”
Esc
:wq
2.运行shell
chmod 744 ./example1.sh
./example1.sh
Hello shell
chmod 644 ./example1.sh
/bin/bash ./example1.sh
3. Shell变量
#!/bin/bash
number_1=`expr 12345 + 54321`
time=`date`
expr length ${number_1}
echo ${#number_1}
echo ${number_1:0:5}
echo “number_1 :${number_1}”
echo ${number_1}
echo ${time}
4. Shell数组,bash支持一维数组,不支持二维数组,并且不限定数组的长度,数组下标由0开始
#!/bin/bash
arr1=(1 2 3 4 5 ‘Java’ ‘Shell’)
echo ${arr1[0]}
#“*”代表所有元素
echo ${arr1[*]}
echo ${arr1[6]}
5. Shell运算符
(1) .数学运算符,+、-、*、/、%
(2) .关系运算符,-eq、-ne、-gt、-lt、-ge、-le
(3) .布尔运算符,!非、-o或、-a且
(4) .字符串运算符,=、!=、-z、-n、str
(5) .文件运算符
-b file 检测文件是否为块设备文本
-c file 检测文件是否是字符设备
-d file 检测文件是否为目录
-f file 检测文件是否是普通文件
-g file 检测文件是否设置了SGID位
-k file 检测文件是否设置了Sticky Bit
-p file 检测文件是否具有管道
-u file 检测文件是否设置了SUID位
-r file 检测文件是否可读
-w file 检测文件是否可写
-x file 检测文件是否可执行
-s file 检测文件是否为空
-e file 检测文件是否存在
#!/bin/bash
n=5
m=5
echo `expr ${n} + ${m}`
echo `expr ${n} - ${m}`
echo `expr ${n} * ${m}`
echo `expr ${n} / ${m}`
echo `expr ${n} % ${m}`
# if语句
if [ $n -eq $m]
then
echo “$n == $m”
fi
if [ $n -gt $m]
then
echo “$n > $m”
fi
if [ $n -ge $m]
then
echo “$n >= $m”
fi
if [ $n -le $m]
then
echo “$n <= $m”
fi
#if else语句
if [ $n -eq $m]
then
echo “$n == $m”
else
echo “$n != $m”
fi
# for循环
for i in 1 2 3 4 5
do
echo $i
done
# while循环
item=1
while(($item<10))
do
echo ${item}
item=`expr $item + 1`
done
# until循环,执行体结束或进行测试判断条件,因此至少执行一次
until 5 -eq 6
do
echo “5656”
done
# case语句
echo “请输入1-10之间的数字”
read comm
case $comm in
1|2|3|4|5)
echo “你输入的数字${comm}在1~5之间”;
6|7|8|9|10)
echo “你输入的数字${comm}在6~10之间”;
esac
- Linux Shell
- Linux Shell
- Linux Shell
- Linux Shell
- Linux Shell
- Linux Shell
- linux shell
- Linux Shell
- Linux Shell
- Linux Shell
- Linux Shell
- linux shell
- LINUX SHELL
- Linux Shell
- Linux Shell
- Linux shell
- linux shell
- Linux Shell
- 【备忘】2017年最新Google面试官亲授备战Java校招面试视频讲解教程
- 算法导论习题练习——红黑树的插入和删除
- 台湾大学深度学习课程 学习笔记 lecture2-1 Backpropagation
- Java 自定义 线程池与任务队列
- 09 实现Django自带的注册\登录\退出登录(表单)功能
- Linux Shell
- 使用requirejs编程实现模块化
- EOJ 3366 这题没验过啊?
- 多线程初识四
- ECharts官方教程(十四)【使用 Canvas 或者 SVG 渲染】
- C语言基础篇(四)——循环结构
- codeforces 900C
- 浅谈学习率与初始化对网络的影响
- Handler的使用