码迷,mamicode.com
首页 > 系统相关 > 详细

Linux命令8

时间:2021-05-24 13:41:21      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:eai   提示符   用户自定义变量   计算   case   $@   case语句   shell   查看   

安装
javaee
jdk
mysql
apache
ideaIU

shell编程 x.sh脚本

格式要求:
1.脚本以#!/bin/bash开头
2.脚本要有可执行权限
vim hello.sh
写上:

!/bin/bash

echo "hello,world"
保存退出
sh hello.sh
chmod u+x hello.sh
./hello.sh
完成

shell变量
分系统变量和用户自定义变量
系统变量:set查看
自定义变量:
定义:变量名=值
撤销变量:unset 变量名
声明静态变量:readonly变量,不能unset

vim var.sh
A=100
echo A=$A
echo "A=$A" 一样地输出
unset A
echo A=$A 输出A=
readonly B=2
unset B 会报错...

规则:
变量名不能数字开头,等号两边不能有空格,变量名习惯大写
A=date反引号,运行date命令,将结果返回变量A

设置环境变量
export 变量名=变量值 (将shell变量输出为环境变量)
source 配置文件 (让修改后的配置信息立即生效)
echo $变量名 (查询环境变量的值)

位置参数变量
./myshell.sh 200 400 要获取200和400

!/bin/bash

echo "0=$0 1=$1 2=$2"
echo "所有的参数=$*"
echo "所有的参数=$@"
echo "参数个数=$#"

运算符

!/bin/bash

RES1=$[(2+3)*4]
echo "res1=$RES1"
RES2=$[$1+$2]
echo "res2=$RES2"

判断语句

!/bin/bash

if [ -f /home/ldt/myshell/add.sh ]
then
echo "yes"
elif
echo "no"
fi

case语句

!/bin/bash

case $1 in
"1")
echo "asdf"
;;
"2")
echo "fdsa"
;;
*)
echo "?"
;;
esac

for
$*会把输入的参数当作一个整体
$@会将参数分开

!/bin/bash

for i in "$*"
do
echo "num is $i"
done
echo "------------------"
for j in "$@"
do
echo "num is $j"
done

!/bin/bash

SUM=0
for(( i=$1; i<=$2; i++))
do
SUM=$[$SUM+$i]
done
echo "总和SUM=$SUM"

read读取控制台输入
read(选项)(参数)
选项:-p:指定读取时的提示符;-t:指定读取值时等待的秒
read -p "输入NUM1=" NUM1
echo "NUM1=$NUM1"

read -t 10 -p "输入NUM2=" NUM2
echo "NUM2=$NUM2"

系统函数
basename /home/aaa/test.txt
text.txt
dirname /home/aaa/test.txt
/home/aaa

自定义函数
[ function ] funname[()]
{
Action;
[return int;]
}

计算输入连个数的和

!/bin/bash

function getSum(){
SUM=$[$n1+$n2]
echo "和是$SUM"
}
read -p "请输入n1和n2" n1 n2
getSum $n1 $n2

Linux命令8

标签:eai   提示符   用户自定义变量   计算   case   $@   case语句   shell   查看   

原文地址:https://www.cnblogs.com/li-zi-feng/p/14776299.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!