Shell教程 之变量
1.Shell变量
1.1 定义变量
your_name="http://www.cnblogs.com/uniquefu"
注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:
- 命名只能使用英文字母,数字和下划线,首个字符不能以数字开头;
- 中间不能有空格,可以使用下划线(_);
- 不能使用标点符号;
- 不能使用bash里的关键字(可用help命令查看保留关键字)。
1.2 使用变量
使用一个定义过的变量,只要在变量名前面加美元符号即可,如:
your_name="http://www.cnblogs.com/uniquefu" echo ${your_name}
echo $your_name
变量名外面的花括号是可选的,加不加都行,加花括号是为了帮助解释器识别变量的边界。
推荐给所有变量加上花括号,这是个好的编程习惯
运行结果:
[root@test3101-3 bin]# ./test.sh
http://www.cnblogs.com/uniquefu
http://www.cnblogs.com/uniquefu
注意:重新给变量赋值,不能加美元符号,即$your_name="uniquefu"
1.3 只读变量
使用 readonly 命令可以将变量定义为只读变量,只读变量的值不能被改变。
下面的例子尝试更改只读变量,结果报错:
your_name="http://www.cnblogs.com/uniquefu" readonly your_name
your_name="https://www.baidu.com"
运行结果:
[root@test3101-3 bin]# ./test.sh
./test.sh: line 7: your_name: readonly variable
1.4 删除变量
使用 unset 命令可以删除变量。语法:
unset 变量名
变量被删除后不能再次使用。unset 命令不能删除只读变量
实例:
your_name="http://www.cnblogs.com/uniquefu" unset your_name
echo ${your_name}
以上实例执行将没有任何输出,且不会报错
Shell教程 之变量的更多相关文章
- 【转】shell 教程——06 Shell变量:Shell变量的定义、删除变量、只读变量、变量类型
Shell支持自定义变量. 定义变量 定义变量时,变量名不加美元符号($),如: variableName="value" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编 ...
- Linux学习——shell编程之变量
shell编程之变量:Linux shell编程基础中的变量. 包括Bash变量的分类和各变量的详细使用,如:用户自定义变量.环境变量.语系变量.位置参数变量和预定义变量. 1:什么是Bash变量? ...
- Linux和Shell教程
文档资料参考: 参考:http://www.runoob.com/linux/linux-tutorial.html 软件下载参考: centos 下载地址:https://www.centos.or ...
- shell判断一个变量是否为空方法总结
shell中如何判断一个变量是否为空 shell编程中,对参数的错误检查项中,包含了变量是否赋值(即一个变量是否为空),判断变量为空方法如下: 1.变量通过" "引号引起来 1 2 ...
- 技能篇:shell教程及脚本编写
前言 我们常时不会见到shell脚本,但是需要阅读开发linux脚本时,这又是一项必不可少的技能.本文在于提供基础的shell编程语法和简单的实例,帮助同学快速开发,可当做shell手册使用也非常善 ...
- Shell基础-环境变量配置文件
Shell基础-环境变量配置文件 source 配置文件 或者 . 配置文件: 把环境变量写入配置文件后,需要用户重新登陆才能生效,而是用source命令,则能直接生效 主要的配置文件: /etc/p ...
- Shell教程2-变量
Shell支持自定义变量. 定义变量 定义变量时,变量名不加美元符号($),如: 复制纯文本新窗口 variableName="value" 注意,变量名和等号之间不能有空格, ...
- Linux —— Shell编程之变量赋值和引用
Linux的shell编程是一种非常成熟的编程语言,它支持各种类型的变量.有三种主要的变量类型:环境变量.内部变量和用户变量. 环境变量(environment variable)是系统环境的一部分, ...
- shell基础及变量
一 Shell概述 1.Shell的作用——命令解释器,“翻译官” shell作为一个人机接口,用于解释用户输入的命令,将命令解释为Linux内核可以执行的2进制代码,并将执行的结果返回在标准终端上. ...
随机推荐
- date命令的用法
date +%F data +%w, date +%W cal date -d "-1 years" +%F date -d "-1 hour" +%T 时间与 ...
- leetcode990
class Finder: def __init__(self): self.Parent = [i for i in range(26)] def union(self, p, q): self.P ...
- pycharm使用技巧 + 调试程序-12
Pycharm使用技巧 系出名门:JetBrains 集成开发环境:IDE 功能: Project视图.代码结构视图 代码导航 语法高亮.自动补齐.错误提示.自动修复 代码重构 主流开发框架的支持(D ...
- [bcc32 Error] typeinfo.h(154): E2367 Can't inherit RTTI class from non-RTTI base 'exception'
[bcc32 Error] typeinfo.h(154): E2367 Can't inherit RTTI class from non-RTTI base 'exception' Full p ...
- 【JEECG技术文档】数据权限自定义SQL表达式用法说明
功能介绍 数据规则通过配置自定义sql来实现数据权限的控制,自定义SQL支持表达式取值 其中自定义sql 条件中字段的名称和数据库表的字段名保持一致. 角色授权 用户角色授权,权限测试不要用adm ...
- Vue 修改dist 目录.
前后端分析之后,前端 打包处理 2
- Spring boot 自定义starter
以下配置来自尚硅谷.. 常用如何配置 @Configuration //指定这个类是一个配置类 @ConditionalOnXXX //在指定条件成立的情况下自动配置类生效 @AutoConfigur ...
- elasticsearch-java
elastissearch的JAVA客户端 官网 java api文档 https://www.elastic.co/guide/en/elasticsearch/client/java-api/ ...
- linux系统基础入门
使用工具:源码管理,自动部署,web服务器(linux) linux系统基础入门 1.下载地址 2.本文介绍的是一个基于Ubuntu的开源操作系统 下载优麒麟 Ubuntu是一个广泛应用于个人电脑,云 ...
- Crash 文件调试
Xcode目录下执行 find . -name symbolicatecrash 找到symbolicatecrash位置,将其拷贝到debug用的文件夹下 执行命令 export DEVELOPER ...