Linux Shell 学习笔记

一:Shell简介

shell脚本是包含系列命令的文本文件,当用户下达指令时,可以读取相应文件并自动执行,大大减少重复性操作,并提供批量处理,自动运维和定时执行任务等功能

二:实例

1.建立sh文件,输出语句

vi test.sh

在这里插入图片描述
// #!是声明,声明该脚本需要解释器执行
在这里插入图片描述
//在写完脚本推出vi模式后需要用chmod命令赋权,给予文件执行权限,新建文件默认没有执行权限。

2.变量的定义和使用

a.变量定义

a=123
a=‘123’
a=“123”
第一种a=123,单引号‘’和双引号“”都不加是需要值内不包含任何空白符好(例如空格)
第二种a=‘123’和a=’"123"的区别在于,单引号会原封不动的输出单引号内的内容,即使有变量和命令,命令需要用反引号``标记,二双引号“”会把变量或者命令解析以后再输出,比如

#!/bin/bash

url="http://www.baidu.com"
web1='百度网:${url}'
web2="百度网:${url}"
echo $web1
echo $web2

输出结果如下
在这里插入图片描述
可以看到变量url在单引号中原封不动的输出,双引号中解析出了值后在输出。

b.变量的输出

shell脚本
在这里插入图片描述
运行结果
在这里插入图片描述
可以看到首先第一条,输出$ {abc}+aaa+$ {abc},运行得到结果abcaaah23
$ {aaa},输出了aaa的值,为abc,这里很有迷惑性,首先要注意一点,当用到变量的值的时候永远不能少了$ 这个符号,缺了这个符号就只是一个变量名,所以前面aaa=abc只是给aaa赋了一个abc的值,没有加上 的 a b c 并 没 有 受 到 前 面 a b c = 123 的 影 响 , 后 面 也 很 明 显 a a a 输 出 出 来 就 是 a a a , 变 量 名 跟 值 是 分 开 来 的 a a a , 这 里 也 是 变 量 名 与 变 量 值 在 s h e l l 中 分 割 的 例 子 , 输 出 并 不 是 a a a 的 值 a b c , 就 是 a a a h 23 , 这 里 首 先 的abc并没有受到前面abc=123的影响,后面也很明显aaa输出出来就是aaa,变量名跟值是分开来的 aaa,这里也是变量名与变量值在shell中分割的例子,输出并不是aaa的值abc,就是aaa h23,这里首先 abcabc=123aaaaaaaaa,shellaaaabc,aaah23, {abc},输出变量abc的值,其次有一行代码是abc=${abc/‘1’/‘h’},意思是找到abc的值中1,换成h,因此输出了h23
d e f 输 出 为 123 , 这 是 因 为 def输出为123,这是因为 def123{!}是一种引用,会追溯代码,aaa=abc,abc=123,所以$def就是123
p a t h 输 出 为 / t m p , 这 个 涉 及 到 反 引 号 的 作 用 , p a t h = ‘ p w d ‘ , 反 引 号 的 作 用 是 修 饰 命 令 , 所 以 这 个 p w d 是 一 个 命 令 , 在 L i n u x 中 p w d 代 表 文 件 夹 路 径 , 这 个 s h e l l 文 件 夹 在 t m p 目 录 中 , 因 此 path输出为/tmp,这个涉及到反引号的作用,path=`pwd`,反引号的作用是修饰命令,所以这个pwd是一个命令,在Linux中pwd代表文件夹路径,这个shell文件夹在tmp目录中,因此 path/tmp,path=pwd,pwdLinuxpwdshelltmppath的值输出为/tmp

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值