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

函数定义:

扫描二维码关注公众号,回复: 15659533 查看本文章
function_name () {
    
    
    <commands>
}

猜你喜欢

转载自blog.csdn.net/qq_37967853/article/details/131240414
今日推荐