【linux/shell实战案例】linux中变量的使用

目录

一.linux变量声明及定义

二.linux变量使用方法

三.linux变量使用花括号${name}和双引号“$name”的区别

四.linux变量使用单引号'$name'和双引号“$name”的区别

五.linux变量中使用命令


一.linux变量声明及定义

#!/bin/bash
name=zhaodabao
  • 等号两边不能有空格
  • 变量名称只能是英文字母和数字,不能以数字开头

二.linux变量使用方法

以下两种使用方式均可,但是最好使用花括号,这样代码的可读性更好,是一种良好的编程习惯。

#!/bin/bash

echo $name

echo ${name}

三.linux变量使用花括号${name}和双引号“$name”的区别


一般情况加双引号和花括号不会影响代码执行结果,二者都可以使用,但是Linux中文件名中包含空格是合法的,为了区分变量和相邻的输出内容,必须使用花括号或双引号,推荐给变量加花括号,是个良好的编程习惯。

具体在使用中会存在特殊情况,二者有所不同,下面是具体情况:

${user}name 和$usemame的区别
"$file name"和$file name的区别

四.linux变量使用单引号'$name'和双引号“$name”的区别

单引号不会编译里面的变量内容,双引号会

#!/bin/bash
user="zhaodabao"

echo '${user}'   
输出:
'${user}'

echo"${user}"
输出:
zhaodabao

五.linux变量中使用命令

使用反单引号(`),在一条语句中,反单引号之间的命令会先被执行,所以可以将反单引号中命令输出的结果赋值给变量

#!/bin/bash
name=`echo $HOME`

六.sed中使用变量

sed简介:(system editor,流文本编辑器)

sed是非交互式编辑器,默认不会修改文件,会输出打印到屏幕或文件逐行处理;

所以主要用sed指令来处理行数据,列数据可以使用awk。

解决方法:
sed中提取某一行数据可以用

sed -n '1p' file


通常在实际情况中,我们需要循环提取多行数据,所以要被提取的行数就需要使用变量表示,例如

for i in {1..3}
do
 sed -n "$i"p file
done


这时候需要注意的是,使用变量表示行数需要用双引号,而不是常规的单引号,这一点很容易被忽略,需要注意

七.awk中使用变量

awk使用变量提取数据的方法为:

for i in {1..3}
do
awk -F" " '{print "'$i'"}' file
done

要注意先用单引号包住变量,再用双引号包住整体

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

程序员赵大宝

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

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

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

打赏作者

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

抵扣说明:

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

余额充值