Linux基础3.20

Linux基础3.20.2018

Shell脚本

1  shell概述:shell的作用命令解释器,翻译官shell将命令解释为Linux内核可以执      行的2进制代码。并将执行的结果返回在标准终端上。

2        shell基础:历史命令 history

                       -n 数字,意思是要列出最近几行n笔命令行表的意思;

                       -a 将目前新增的history命令新增如histfiles中,若没有加histfiles,则默认写入~/.bash_history

                       -c 将目前的shell中的所有history内容全部消除;

   历史命令默认会保存1000条,可以在环境变量配置文件/etc/profile中进行修改。

3  历史命令的调用:使用上下箭头调用以前的历史命令;

                    使用!n重复执行第n条命令;

                    使用!!重复执行上一条命令;

                    使用!字串重复执行最后一条以该字符串开头的命令;

4        命令与文件补全:在bash中,命令与文件补全是非常方便的,在输入文件或命令时按”Tab“

5        命令别名: alias 别名=‘原命令

注意:若要每次登入就自动生效别名,则把别名加在/etc/prifile~/.bashrc中。然后#source~/.bashrc

      若要让每个用户都生效别名,则把别名加在/etc/bashrc最后面,然后#source/etc/bashrc

6        删除别名unalias

7        多命令顺序执行  ;命令1命令2 多个命令顺序执行,命令之间没有任何逻辑联系;

                     && 命令1&&命令2 逻辑与当命令1正确执行,则命令2才会执行,当命令1执行不正确,则命令2不会执行;

                     || 命令1||命令2 逻辑或当命令1执行不正确,则命令2才会执行,当命令1正确执行,则命令2不会执行;

8        管道符:命令1 | 命令2 命令1的正确输出作为命令2的操作对象。

9        Cut命令:可将一段信息的某一段给他切出,处理的信息是以行为单位。

                      -d  后面接分隔字符。与-f一起使用;

                      -f  依据-d的分隔字符将一段信息分割成为数段,用-f取出的第几段的意思;

                      -c  以字符的单位取出固定字符区间;

10  tee命令         -a 以累加的方式,将数据加入file当中!

11  echo命令        -e 支持反斜线控制的字符转换;

                       -n 换行且行标移至行首;

12  转义字符 \a:发出警告声;

\b:删除前一个字符;

\c:最后不加上换行符号;

\f:换行但光标依旧停留在原来的位置;

\n:换行且光标移至首行;

\r:光标移至首行,但不换行;

\t:插入tab

\v:与\f相同;

\\:插入\字符;

\nnn:插入nnn(八进制)所代表的ASCⅡ字符;

13  shell脚本的基本元素: (1)#!/bin/bash,指出shell类型

                          2#注释

                          3)变量

                          4)控制

     例如一个shell脚本:   vi datewho.sh

                           #! /bin/bash

                           #this is first shell

                           date;who

14  运行脚本的shell脚本方法

方法1#sh./datewho.sh

方法2#chmod +x datewho.sh

       #./datewho.sh

15  shell变量可以保存如路径、文件名或者一个数字

变量名可以由字母、数字、下划线组成,但是不能以数字开头。

bash中,变量的默认类型都是字符串型,如果要进行数值运算,则必须指定变量类型为数值型。

16  变量分类:本地变量(局部变量只能在创建他们的shell中使用,可以在shell程序内任意使用和修改他们)、环境变量、内部变量(有系统提供的,环境变量不同,但用户不能修改它们)。

17  本地变量:注意细节等号两边不可以有空格;

                       取值包含空格,必须用双引号括起来;

                       Shell变量可以用大小写字母,区分大小写。

18  变量的声明和使用:变量不用声明类型

                      变量声明及赋值格式

(变量=值)

 变量的引用

 $变量名

 ${变量名}

19  让环境变量的修改在退出shell再次登录时仍有效,需要在相关配置文件中修改,bash的初始文件有: /etc/profile~/.bash_profile~/.bashrc/etc/bashrc

20  部分内部变量 $# 传送给shell程序的位置参数的数量;

$? 最后命令的完成或者shell程序内部执行的shell程序。0表示没有错误;

$0 shell程序的名称;

$* 调用shell程序时所传送的全部参数的单字符串;

   “参数1“参数2“

$@ ”参数1 参数2“…形式的参数

$n n个参数

$$ 本程序的PID

21  shell中的特殊符号:注释符#、美元符$、单引号、双引号、倒引号

                        (单引号原样输出,双引号解释其中的$、转义字符、倒引号,倒引号内只能存放可执行命令)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值