bash 中的变量
bash 中的变量
Linux command line 笔记
变量无需声明,自动创建
var=abc #变量a赋值为字符串abc
var="hello world" #字符串里有空格赋值要加引号
var="hello world $var" #任何可以扩展成字符串的都可以赋给变量
var=$(ls -l *.md) # 输出结果为字符串的命令
var=$(5*5) #运算符
var="hello\nworld" #转义字符串序列,例子中的\n
最后一个转义字符赋值给变量的似乎不行
> var="hello\nworld"
> echo $var
hello\nworld
> echo -e $var #加上选项-e 可以输出解释过的转义字符
hello
world
网上找到一种适用于bash将包含换行的字符(或其他转义字符序列语义上)赋值给变量的方法
> var=$'hello\nworld'
测试是否赋值成换行
> echo $var 不能作为测试方法
在扩展变量$var的时候,因为换行符被作为一个参数的分隔符号解释了,就会被解释成两个参数,而echo支持一个参数,会用空格将hello和world连接在一起,作为一个参数,输出了hello world。
用这个来测试
> echo "$var"
hello
world
可以用{}将变量名包起来,可以防止被解释为变量名foo1的变量。
${foo}1
here文档
> cat << token
输入文本作为前面cat命令的输入,token是表示终止的符号。输入的文本不需要转义单引号和双引号。
bash 中的变量的更多相关文章
- Bash中的变量
Bash中的变量1.用户定义的变量变量的定义 用户定义的变量有字母数字及下划线组成,并且变量名的第一个字符不能为数字. 与其它UNIX名字一样,变量名是大小写敏感的. 对于变量 ...
- Bash 中 SHLVL 变量为 1000 的时候
SHLVL 环境变量代表 Shell 嵌套执行的深度. $ echo $SHLVL 1 $ bash $ echo $SHLVL 2 $ bash $ echo $SHLVL 3 在 Bash 里,这 ...
- 在Linux系详解Linux bash中的变量
(大讲台:国内首个it在线教育混合式自适应学习) 统中进行日常运维或者是编写脚本时,变量是再熟悉不过的了,但这些变量都有哪些类型,具体的用法又有哪些差异呢?本文整理分享给大家: 一.bash变量类型: ...
- Linux bash中的变量分类
1.本地变量 VAR=XYZ 2.局部变量 local VAR=XYZ 3.环境变量 在子shell中可以起作用 export VAR=XYZ 4.位置变量 $0 脚本名本身 $1 第一个参数 $2 ...
- bash中声明变量方法
bash提供了declare命令来声明变量,该命令的基本语法如下: declare attribute variable 其中,attribute表示变量的属性,常用的属性有如下所述. ...
- bash 中的变量可以这么用
举个例子: t.sh ====================== #!/bin/bash ./a.sh ./b.sh ======================= a.sh =========== ...
- 手把手教你 bash中给变量赋值时 ' 和 " 和 ` 和 $() 的使用
1.赋值指令 var='变量内容' var="变量内容" var=`command` var=$(command) var=变量内容 2.格式要求 =两边不能有空白字符 错误示例 ...
- Bash简明教程--变量
1. 前言 Bash是一门流行在*nix系统下的脚本语言.作为一门脚本语言,变量是一门语言的基本要素,在这篇教程中,我们将学习Bash中的变量是怎么表示的,以及变量相关的一些语法规则. 2. Bash ...
- bash中一些基础知识
bash是linux操作系统的shell.以下是Multi-Perspective Sentence Similarity Modeling论文实现时碰到的一个bash: #!/bin/bash py ...
随机推荐
- Hi,我还没死(屎)
HDNOIP没考好,紧接着NOIP又到了,加紧练习:-)
- 使用Maven构建Android项目
http://www.ikoding.com/build-android-project-with-maven/ 之前一直在做WEB前端项目,前段时间接手第一个Android项目,拿到代码之后,先试着 ...
- AC自动机(二维) UVA 11019 Matrix Matcher
题目传送门 题意:训练指南P218 分析:一行一行的插入,一行一行的匹配,当匹配成功时将对应子矩阵的左上角位置cnt[r][c]++;然后统计 cnt[r][c] == x 的数量 #include ...
- 网站迁移时候,发现<head>内容都到body里了
遇到的问题截图如下: 这个是编码问题,需要把所有涉及的文件保存成UTF-8 without BOM,手动的话可以用notepad++ 如果网站支持php,这边提供了一个php的脚本(clearBom. ...
- start bbs轻论坛安装时数据库提示错误
A PHP Error was encounteredSeverity: NoticeMessage: Only variable references should be returned by r ...
- Shell 编程基础之 Break, Continue 练习
一.语法 break:用来跳出循环.break N 可以跳出多层循环 break break N continue:用来跳过循环.continue N 可以跳过多层循环 continue contin ...
- EF框架step by step(7)—Code First DataAnnotations(2)
上一篇EF框架step by step(7)—Code First DataAnnotations(1)描述了实体内部的采用数据特性描述与表的关系.这一篇将用DataAnnotations描述一下实体 ...
- [转]HDFS客户端的权限错误:Permission denied
搭建了一个Hadoop的环境,Hadoop集群环境部署在几个Linux服务器上,现在想使用windows上的Java客户端来操作集群中的HDFS文件,但是在客户端运行时出现了如下的认证错误. 错误的详 ...
- Java classpath 如何自动添加web-content /lib下的jar包
右键属性--Java build path--Libraries--add library--Web app libraries -- next --next -- ok
- ACM Arithmetic Expression
Description Given N arithmetic expressions, can you tell whose result is closest to 9? Input Line 1: ...