不信网恋 发表于 2018-8-17 07:49:33

shell介绍,date命令,shell变量

Shell

shell是什么?

  shell是一种脚本语言
  可以使用逻辑判断、循环判断等语句;
  可以自定义函数;
  shell是系统命令的集合,比如Windows的批处理命令;
  shell脚本可以实现自动化运维,能打打增加我们的运维效益;


shell脚本结构
  开头必须加#!/bin/bash
  也就是调用/bin/bash的内核运行
  脚本的名字以.sh结尾,用来区分是一个shell脚本;

执行方法有两种:

1.作为可执行程序
  

chmod +x 1.sh       //是脚本具有执行权限  
./1.sh                     //执行脚本
  

2.作为解释器参数
  

bash 1.sh                              //也可以sh 1.sh  

  查看脚本执行过程:bash -x 1.sh
  查看脚本是否语法错误:bash -n 1.sh


date日期命令

年月日:

  命令:date+%Y-%m-%d
  输出:2018-04-17
  命令:date +%F
  输出:2018-04-17
  命令:date +%y-%m-%d
  输出:18-04-17
  命令:date +%Y%m%d
  输出:20180417


时间:

  命令:date+%H:%M:%S
  输出:20:23:16
  命令:date +%T
  输出:20:23:16

  周:

  %w:这个月第几周
  %W:今年第几周


时间戳:

  date +%s
  date -d @1504620492


增加减少年月日:

  date -d "+1day"一天后
  date -d "-1 day"一天前
  date -d "-1 month" 一月前
  date -d "-1 min"一分钟前


变量

命名规则:

  命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。
  中间不能有空格,可以使用下划线(_)。
  不能使用标点符号。
  不能使用bash里的关键字(可用help命令查看保留关键字)。


shell数值:
  

a=1;b=2;      //给变量a赋予数值1,变量b赋予数值2  
c=$(($a+$b))    //c=a+b,使用运算必须前面加$
  

shell字符串:
  字符串时shell变成中最常用最有用的数据类型(数字和字符串),字符串可以用单引号,也可以用双引号;

单引号:
  

str=‘this is a string’  

  无法使用转义符和变量;

双引号:
  

your_name='aaaa'  
str="Hello,I know your are \"$your_name\"! \n"
  

  双引号的优点:可以有变量,可以出现转义符;

反引号:
  反引号可以将命令结果传递给变量
  假如1.txt有3行,
  

n=`wc -l 1.txt`  
echo n
  

  输出:3 1.txt

美元符号:
  美元符号$
  当使用变量时候,也就是进行变量与变量之间数学运算,或是将命令传递给某个变量都可以使用;
  c=$(($a+$b))
  n=$(wc -l 1.txt)

  调用变量值必须在前面带$符号
  引用某个命令的结果时,用变量替代   n=wc -l 1.txt
  写和用户交互的脚本时,变量也是必不可少的read -p "Input a number: " n; echo $n   如果没写这个n,可以直接使用$REPLY
  内置变量 $0, $1, $2…    $0表示脚本本身,$1 第一个参数,$2 第二个 ....       $#表示参数个数
  数学运算a=1;b=2; c=$(($a+$b))或者$[$a+$b]



页: [1]
查看完整版本: shell介绍,date命令,shell变量