shell语法1-概论、注释、变量、字符串
如果感觉有点忘了或者有点懵,敲出来测试测试就好了
一:概论
Linux系统中一般默认使用bash,文件开头需要写#! /bin/bash,指明bash为脚本解释器
chmod +x filename:使脚本具有可执行权限
执行方式:
./test.sh # 当前路径下执行
/home/acs/test.sh # 绝对路径下执行
bash test.sh用解释器执行
二:注释
单行:#之后为注释
多行:
:<<EOF
第一行注释
第二行注释
第三行注释
EOF
注:EOF可换成其他字符串(如aaa)
三:变量
1、
name=’liang‘ #可加单引号、双引号或不加
name="liang"
name=liang
使用变量需要$符号或者${}
echo $name
echo${name}
2、只读变量:使用reaonly或者declare将变量变为只读
name=liang
readonly name/declare -r name #两种方法
3、删除变量:unset
name=liang
unset name
echo $name #输出空行
4、局部变量(子进程无法访问)、全局变量(子进程可以访问)
设置为全局变量:export/declare -x
name=liang
export name/declare -x name #两种方法
设置为局部变量:declare +x
export name=liang
declare +x name
四、字符串
可以单引号、双引号
单引号:里面内容原样输出,不会执行、取变量
双引号:里面内容可以执行,会取变量
name=liang
echo ' hi,$name \"hh\" ' 输出hi,$name \"hh\" #单引号,不取变量,不转义
echo " hi,$name \"hh\" "输出hi,liang "hh" #双引号,取变量,\"转义为"
获取字符串长度:
name=liang
echo ${#name} #输出5
提取字串:
echo ${name:0:3} #提取lia(第一个字符为0)
shell语法1-概论、注释、变量、字符串的更多相关文章
- shell重温---基础篇(shell变量&字符串以及git GUI运行shell脚本方式)
既然是基础篇那肯定是需要对shell的各种需要注意的基本点进行说明了.接下来就是show time... shell呢,是一个用C语言编写的应用程序,是用户使用linux的桥梁.所以呢,他既是一 ...
- Linux-Shell基础(变量,字符串,数组)
一. 什么是shell shell是一个用C语言编写的程序,它是用户使用Linux的桥梁,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统 ...
- shell语法(二)
Shell脚本语法 条件测试:test. [ ] 命令test或[可以测试一个条件是否成立,如果测试结果为真,则该命令的Exit Status为0,如果测试结果为假,则命令的Exit Status为1 ...
- Shell语法规范
ver:1.0 博客:https://www.cnblogs.com/Rohn 本文介绍了Shell编程的一些语法规范,主要参考依据为谷歌的Shell语法风格. 目录 背景 使用哪一种Shell 什么 ...
- 转:bash shell 语法1
1 Shell介绍 Shell的作用是解释执行用户的命令,用户输入一条命令,Shell就解释执行一条,这种方式称为交互式(Interactive),Shell还有一种执行命令的方式称为批处理(Batc ...
- shell语法基础
一.变量 1.linux大小写敏感,变量取名要注意大小写.可以通过变量名前面加$来访问变量的内容.可以通过使用read命令来将用户输入的值赋给一个变量. 2.给变量赋值时,如果字符串中包含空格,就必须 ...
- 小符号反映大问题,Shell中下划线_与变量的关系。
之前写过一个根据日期和时间自动命名文件名的时候遇到一个问题. #! /bin/bash read -p "please input the filename:" filename ...
- Shell学习小结 - 深入认识变量
移动端访问不佳,请访问我的个人博客 变量的命名 对于初学者来说,可以简单的理解为,变量就是保存在计算机内存中的一系列的键值对. 列如: str="hello" 这里的str就是变量 ...
- python3基础语法(标识符,注释,数据类型,获取用户输出,代码块,python保留字)
编码 默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串. 当然你也可以为源码文件指定不同的编码: # -*- coding: cp-1252 -*- ...
- (2)javascript的基本语法、数据结构、变量
本篇学习资料主要讲解javascript的基本语法.数据结构.变量 无论是传统的编程语言,还是脚本语言,都具有数据类型.常量和变量.运算符.表达式.注释语句.流程控制语句等基本元素构成,这些 ...
随机推荐
- ECDSA签名验证
using System; using System.IO; using System.Text; using Org.BouncyCastle.Crypto; using Org.BouncyCas ...
- 【GROMACS】分子动力学模拟①——环境搭建
系统环境 Win11 22H2 企业版 开启虚拟化.window subsystem for liunx等虚拟机相关的功能 应用商店中安装WSL2 安装步骤 打开Ubuntu,输入sudo apt f ...
- python_test_0001_base_string_swap
#!/usr/bin/python # -*- coding: UTF-8 -*- import time from lib_001_decorator_log_funcname import dec ...
- gin框架笔记
1.实现http://127.0.0.1:8080/index.html的形式访问前端页面.gin-contrib/static 使用中间件的方式判断是否存在该静态文件.fileserver 是一个 ...
- 攻防世界-easyphp(前导数字字符串、数字字符串、数字弱类型比较)
一道php代码审计题,利用了字符与数字弱类型比较的漏洞. 一.基础知识 数字字符串 形如数字形式的字符串叫做数字字符串,例如:'123456','1e56112'(科学计数法),'123.4'(单纯的 ...
- “adb”不是内部或外部命令——解决方案
在AS(Android Studio简称AS)app真机测试中adb可以轻松找到安卓设备,ADB全称Android Debug Bridge,用于Android设备进行交互,也可以这样理解ADB是An ...
- CToolsDetachBehaviors
CTools dispatches the event "CToolsDetachBehaviors" when the modal gets closed. Careful th ...
- (转载)Overlay网络
1. Overlay 网络1.1 Overlay 技术概述 Overlay 在网络技术领域,指的是一种网络架构上叠加的虚拟化技术模式,其大体框架是对基础网络不进行大规模修改的条件下,实现应用在网 ...
- 修改Linux终端默认编辑器,实现代码高亮
echo export EDITOR=vim >>/etc/profile.d/env.sh
- SAP管理员SAP*和DDIC被锁定后如何解锁或重置密码
SAP*初始化密码是06071992或passDDIC默认密码为19920706 环境信息:win server2003,SQL Server2008 R2 账号信息存在于数据库usr02表中,1.删 ...