bash脚本基本语法

1.创建脚本基本步骤:

1)创建存放脚本的文件夹
mkdir demo
2)创建空的脚本文件
touch demo.sh
3)cd进demo文件夹,编辑脚本
cd deme
vim demo.sh
脚本第一行:#!/bin/bash
4)执行脚本前,给予权限
chmod u+x demo.sh
5)执行脚本
./demo.sh

2.常用的一些脚本编辑:

1)时间计算
看个简单例子:

#!/bin/bash
timer_start=`date "+%Y-%m-%d %H:%M:%S"` //获取当前时间
echo "开始时间:$timer_start" //打印
var1=$(echo "scale=3 ; 3.44/5"|bc) //bc为打开计算器功能,3.44/5结果保留3位小数
echo The answer is $var1
sleep 3s //延时3秒
timer_end=`date "+%Y-%m-%d %H:%M:%S"` //再次获取当前时间
echo "结束时间:$timer_end"
start_seconds=$(date --date="$timer_start" +%s); //转为秒
end_seconds=$(date --date="$timer_end" +%s); 
echo "start:$start_seconds"
echo "end:$end_seconds"
var3=$(($end_seconds-$start_seconds)) //时间差
echo "$var3" //得出3s

2)计数排序

cat salesdata.txt l ./ summary //cat为浏览打印命令
cat /dev/stdin | cut -d' ' -f 2,3 l sort  //对txt文本的第2和3列字段进行统计
cat $1 | wc -l 统计文件有多少行

3)查看变量长度

${#variable}

4)条件语句
基本判断语句

&&:且
||:或
!表达式:  表达式为false
-n 字符串 :字符串长度超过0
-z字符串:字符串长度为0
-eq:正数相等
-gt:大于
-ge:大于等于
-lt:小于
-d 文件:文件存在且是目录
-e文件:文件存在
-r文件:文件存在且可读
-s文件:文件存在大小大于0
-w文件:文件存在且可写
-x文件:文件存在且可执行

case条件语句:


case <variable in
<pattern 1>)
   <commands>
    ;;
<pattern 2>)
    <other commands>
    ;;
esac

select筛选:

select var in <list>
do
      <commands>
done

循环语句:

while [ <some test> ]
do
    <commands>
done

for var in <list> //{1..6..2} 间隔为2
do
    <commands>
done

for value in $1/*.html
do
     cp $value $1/$( basename -s .html $value ).php
done

文件操作:

$#:输入参数的个数
$0:输出当前文件名

行列操作:
比如demo下的内容5列

df demo:
Filesystem   1K-blocksUsed      Available   Use%   Mounted on
/dev/xvda1   83763002156692     6219608     26%    /

df demo | tail -1 | awk '{ print $5}' | sed 's/%//'   //取最后一行,第5列,去除%
26

函数定义:

function_name () {
    <commands>
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

定位算法工程师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值