Shelll1-基础入门之变量
1.静态语言:编译型语言 强类型(变量)
事先转换成可执行格式 也就是先编译在执行
比如 C++、C、 java C#
动态语言:解释性语言 弱类型
边解释边执行
比如PHP shell python perl
2.变量类型:
事先确定数据的库存格式和长度
字符
数值:整型 浮点型
单引号是强引用 不做变量替换的
双引号是弱引用 内部的变量会替换
反引号( ``或是$(命令) )表示引用命令的执行结果
a="ab h"
echo ${#a}
4
上边两条命令会显示变量的长度(包括空格)
3 bash变量类型
环境变量:echo $PATH
本地变量:
位置变量:$1、$2、$3、$4、$5
特殊变量:$? 这代表上一个命令的执行状态返回值。
一个程序执可能有两类返回值:
<1>程序执行结果
<2>程序状态返回代码(0-255)
0:正确执行 1-255:错误执行1、2、127系统预留。
用法:在一个命令执行完之后用echo $?命令 如果显示0说明当前的命令执行成功
如果显示2说明是权限拒绝
如果显示1-125说明运行失败
如果显示127为找到运行的命令
4.撤销变量: unset 变量名
5.查看当前shell中变量: 用set命令
6.查看当前shell中的环境变量:<1>printenv <2> env <3>export<4>set(它能列出全局和非全局的变量) 都可以
7.特殊变量:$#:参数的个数 $*:表示参数的所有内容。(将命令行所有的参数视为单个字符串。等 同于“$1$2$3”)
$@:表示参数的所有内容。(将命令行所有的参数视为单独的字符串。 等同于“$1”“$2”“$3”,这时将参数传递给其他程序的最好方 式,因为他会保留所有内嵌在每个参数里的任何空格)用的时候 要加双引号"$@".
set -- 参数1 参数2 参数3这个可以模拟出位置参数
例子:
set -- 参数1 参数2 参数3这个可以模拟出位置参数
for i in "$@" ; do
echo $i
done
8.全局变量的文件在:/etc/profile. 修改完之后又两种办法生效:<1>用. /etc/profile <2> source /etc/profile
9.设置全局变量
export 变量名称=变量值 他可已将这个变量变成全局变量
declare -x 也可以
declare -i 变量=值 //变量默认的为字符串,想要让一个变量为整型可以声明,这表是将一个变量声明为整型
在/etc/profile中尽量要遵循这种标准的格式
例子:系统自带的环境变量
echo $HOSTTYPE 查看系统是多少位的操作系统
echo $PATH 查看当前的环境变量
echo $SHELL 查看系统默认使用的shell
cat /etc/shells 查看系统支持哪些shell
echo $UID 查看当前用户的UID
echo $HISTSIZE
chsh 用户名 可以改变用户的shell平台。
10.局部变量赋值
<1>变量名=变量值 例子:a=1
<2>read 命令(可以与用户产生交互,就是可以用这个命令写一段提示语句)
格式:read 变量1 变量2 //可以是1个或是多个变量然后输入变量值
read -p “提示语” 变量名 例子:read -p “请输入数字:” a
read -n 表示不换行
read -t 数值 表示等待超时间,就是等待用户输入的时间
11.cat << END END表示文档结束标记.它写成什么都行,只要结尾一致就行
用户手动输入内容
END
它可以等待用户输入内容
cat << END > 文件名
用户手动输入内容
END
//用户手动输入的内容输入到文件里
Shelll1-基础入门之变量的更多相关文章
- (大数据工程师学习路径)第一步 Linux 基础入门----环境变量与文件查找
环境变量与文件查找 本节介绍环境变量的作用与用法,及几种搜索文件的方法.学会这些技巧高效地使用 Linux. 一.环境变量 1.变量 要解释环境变量,得先明白变量是什么,准确的说应该是 Shell 变 ...
- Linux基础入门-环境变量与文件查找
一.环境变量: Shell中的变量也有不同的数据类型,不用专门指定类型名,可以参与运算,有作用域限制. declare tmp 创建一个变量 可以不用专门声明,可以即用即创建 tmp=shiyanlo ...
- python基础入门之一 —— 变量与运算符
1.标识符 由数字,字母,下划线组成 不能由数字开头 不能使用内置关键字 严格区分大小 2.数据类型 数值:int (整型) float(浮点型) 布尔型:True(真) False(假) str ( ...
- 【JAVA零基础入门系列】Day4 变量与常量
这一篇主要讲解Java中的变量,什么是变量,变量的作用以及如何声明,使用变量. 那么什么是变量?对于初学者而言,可以将变量理解为盒子,这些盒子可以用来存放数据,不同类型的数据需要放在对应类型的盒子里. ...
- 020 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 14 变量与常量 知识总结
020 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 14 变量与常量 知识总结 本文知识点:变量与常量 知识总结 Java中的标识符 Java中的关键字 目前常 ...
- 019 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 13 数据类型转换的代码示例
019 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 13 数据类型转换的代码示例 本文知识点:Java中的数据类型转换案例 学习视频有误,导致没法写文,文章内容 ...
- 018 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 12 数据类型转换的基本概念
018 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 12 数据类型转换的基本概念 本文知识点:Java中的数据类型转换 类型转换 类型转换分类 2类,分别是: ...
- 017 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 11 变量综合案例
017 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 11 变量综合案例 本文知识点:变量 相同类型的变量可以一次同时定义多个 例:可以一行代码同时定义2个变量x ...
- 016 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 10 布尔类型和字符串的字面值
016 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 10 布尔类型和字符串的字面值 本文知识点:字面值 关于字面值的概念,需要注意:很多地方,我们可能就把字面值 ...
- 015 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 09 Unicode编码
015 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 09 Unicode编码 本文知识点:Unicode编码以及字符如何表示? ASCII码是美国提出的标准信息 ...
随机推荐
- apply 和 call 的区别
相同点: 都能够改变方法的执行上下文(执行环境),将一个对象的方法交给另一个对象来执行,并且是立即执行 不同点: call方法从第二个参数开始可以接收任意个参数,每个参数会映射到相应位置的func的参 ...
- 【力扣】剑指 Offer 25. 合并两个排序的链表
输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的. 示例1: 输入:1->2->4, 1->3->4输出:1->1->2->3-> ...
- 【C/C++】小红的字符串 / 中兴捧月
考试的时候想复杂了,其实直接一边写放进set里去重就可以了 很有意思 自己的理解就是cpp的map+set或者就是set可以完成大多数java的hashset操作 链接:https://ac.nowc ...
- 详解 java 异常
Throwable 可以用来表示任何可以作为异常抛出的类(注意,是类不是接口),分为两种: Error(注意!error也是可以throw的,但是不建议) 和 Exception. 其中 Error ...
- Java知识点总结——IO流框架
IO框架 一.流的概念 概念:内存与存储设备之间传输数据的通道. 二.流的分类 按方向分类: 输入流:将<存储设备>中的内容读入到<内存>中 输出流:将<内存>中的 ...
- Mysql配置文件 客户端
[client] #默认链接的端口 port=3306 #默认链接的socket的位置 socket=/var/lib/mysql.sock #默认编码格式 default-character-set ...
- set env export区别
set env export区别 set,env和export这三个命令都可以用来显示shell变量,区别[root@localhost root]# aaa=bbb[root@localhost r ...
- 《手把手教你》系列技巧篇(五十二)-java+ selenium自动化测试-处理面包屑(详细教程)
1.简介 面包屑(Breadcrumb),又称面包屑导航(BreadcrumbNavigation)这个概念来自童话故事"汉赛尔和格莱特",当汉赛尔和格莱特穿过森林时,不小心迷路了 ...
- C# 使用163的SMTP服务器发送邮件
string Receiver, string Subject, string content: //163邮箱发送配置 client = new System.Net.Mail.SmtpClient ...
- CF152A Marks 题解
Content 有 \(n\) 名学生考了 \(m\) 门科目,各得到了自己的成绩单.如果第 \(i\) 个学生的第 \(j\) 个科目的分数 \(a_{i,j}\) 在所有学生中是最高的,那么我们就 ...