linux编程笔记--shell脚本

本文档介绍了 Linux Shell 脚本的基础知识,包括如何使用 echo 命令显示信息、设置和读取变量、定义和使用环境变量等。此外,还提供了几个示例脚本来展示 if 语句、case 语句、while 循环等控制结构的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[b][i]去年学习linux时做过的部分笔记,浅显易懂,比较简单[/i][/b]

//
shell脚本
与windows 批处理相似 功能更加强大 已经是一门编程语言了

为了使用bash shell来执行脚本magic,其命令是:
$bash magic 或 $ ./magic
$为终端提示符(普通用户)
shell可以起任何名字,为了规范,使用 .sh后缀

echo命令

用于在屏幕上显示信息
例如: $echo "This is an example"
# 注释符号
linux中所有的变量都被挡作字符串

读入值给变量$read fname 屏幕会暂停等待用户输入内容
export命令指出的才是shell全局变量 默认的是局部变量

显示用户的home目录 echo $HOME(大小写区别)
PATH变量用冒号定界而不是分号
echo $PATH 显示path

修改path vi /etc/profile
例如: 增加当前路径 在文件中添加
PATH=$PATH:.
export PATH

改命令提示符 $PS1="HELLO>"

LOGNAME 显示登陆用户名
SHLVL 显示当前工作的shell level
SHELL 存储了用户缺省的shell
env 查看所有的已移出的环境变量表和他们各自的值

$expr 4 + 5 将在屏幕上显示9 (+前后都必须有空格)
echo "the date is `date`" 显示日期

echo $((expression)) 计算表达式的值

例1:
# the first shell
echo "please enter your name :"
read fname
echo ${fname}
s=xxx
echo $s
增加执行权限 chmod a+x first.sh

例2:
#callcenter.sh
echo "please enter totle number:"
read totlenumber
echo "please enter resolve number:"
read resnumber
echo $((totlenumber-resnumber))

增加执行权限 chmod a+x callcenter.sh

例3:if程序
#Avg.sh
echo "please enter score:"
read score

if [ $score -lt 80 ] #小于
then
echo "wrong!!!"
elif [ $score -ge 80 -a $score -lt 90 ] #大于并且
then
echo "Good!!!"
else
echo "very good!!!"
fi
增加执行权限 chmod a+x Avg.sh

例4:菜单程序
#CaseExample.sh
echo "Services:"
echo -n "1)ls"
echo -n "2)ls -l"
echo -n "3)Exit"
echo "please enter choice[1-3]"
read choice
case $choice in
1) ls;;
2) ls -l;;
3) exit;;
*) echo "enter wrong";;
esac
增加执行权限 chmod a+x CaseExample.sh

例5:while循环
#WhileExample.sh
ecode=1000
while [ $ecode -le 1002 ]
do
echo "please enter employee info ecode=$ecode"
echo "Enter name:"
read name
echo "Enter mail:"
read mail

echo "Name:$name Mail:$mail">>employee.dat
((ecode=$ecode+1))
done
增加执行权限 chmod a+x WhileExample.sh


查看运行的线程 ps
将查找passwd文件变成后台进程 find / -name passwd & 加了&
杀死线程 kill (PID号码)
查看执行时间有错误的话重定向 time find /etc -name passwd 2>/dev/null
利用管道符号分页查看 ls -l /dev |more
/dev目录下的文件比较多 容易理解管道
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值