Linux中的输入重定向,变量
1 ;分号
格式:命令1;命令2;命令3
说明:命令之间用分号隔开是顺序执行,命令之间没有任何逻辑关系
2 && 逻辑与
格式:命令1 && 命令2
说明:命令1正确执行,命令2才会执行;命令1执行失败,则命令2不会执行
3 || 逻辑或
格式:命令1 || 命令2
说明:命令1执行错误,则命令2才会执行;命令1执行正确,则命令2不会执行
4 复制磁盘
dd if=输入文件 of=输出文件 bs=字节数 count=个数
说明:if->输入文件 指定源文件或源设备
of-> 输出文件,指定目标文件或目标设备
bs->字节数 指定一次输入/输出多少字节,即这些字节看做一个数据块
5 判断命令是否执行正确
命令 && echo yes || echo no
说明:命令执行正确无误,输出yes,执行有错误输出no
6 | 管道符
格式:命令1 | 命令2
作用:命令1的正确输出作为命令2的操作对象,要求命令1必须有正确输出
7 grep [选项] '搜索内容' 文件名
作用:搜索
参数:
-i 忽略大小写
-n 输出行号
-v 反向查找
--color=auto 颜色显示
通配符及其他特殊符号
?->匹配一个任意字符
*->匹配0个或多个任意字符
[]->匹配中括号中任意一个字符 例如:[abc] 表示匹配a或者b或者c
[-]->代表一个范围匹配范围中的任意一个 例如:[1-9] 匹配1-9中的任意一个数字
[^]->匹配不是中括号中的一个字符 例如:[^0-9] 匹配一个不是数字的字符
8 bash中其他的特殊字符
'' 单引号 单引号中的任何特殊字符均没有意义
"" 双引号 双引号中除 $ ` \ 外其他的特殊字符都没有特殊意义 ,$ 调用变量 `引用系统命令 \转移字符
`` 反引号 反引号括起来的内容是系统命令,会先执行系统命令
$() 和反引号一样,用来引用系统命令
$ 取变量的值,不带$是变量 带上$是去变量的值
9 变量
变量的默认类型都是字符串类型
变量用=连接,=两侧不能有空格,如果变量值中有空格需要用引号引起来
name=$(date) 将当前时间赋值给变量name
环境变量名建议大写,便于区分
10 变量分类
用户自定义变量
环境变量 ->是和系统操作环境相关的数据
位置参数变量 ->这种变量主要用来向脚本中传递参数和数据的,变量名不能自定义,变量作用是固定的
预定义变量 ->是bash中已经定义好的变量,变量名不能自定义,变量作用也是固定的
其中位置参数变量也属于预定义变量
11 set
作用:查看系统中的所有变量
12 unset 变量名
作用:删除变量,删除环境变量也用这个命令
13 pstree
作用:查看系统中使用的shell的层级树
14 设置环境变量
export 变量名=变量值 设定环境变量 例如:export age=18 添加一个环境变量age 并赋值为18
name='zhaolili' 添加本地变量并赋值为 zhaolili
export name 这样就把本地变量name变成了环境变量
15 env
作用:查询环境变量
16 环境变量PS1
作用:定义系统提示符的变量
参数:
\d 显示日期,格式为"星期 月 日"
\h 显示简写主机名,默认为localhost
\t 显示24小时时间制,格式为 "HH:MM:SS"
\T 显示12小时时间制,格式为"HH:MM:SS"
\A 显示24小时时间制,格式为"HH:MM"
\u 显示当前用户名
\w 显示当前工作目录的完整路径
\W 显示当前工作目录的最后一层目录
\# 执行的第n个命令
\$ 提示符 root用户是# 其他用户是$
17 位置参数变量
$n ->n为数字 $0代表命令本身 $1-$9代表第一都第9个参数 10以上的参数用大括号 ${10} ${11}
$* -> 代表命令中的所有参数,$*把所有参数看做一个整体
$@ ->代表命令中所有参数,$@把所有参数区分对待
$# -> 代表命令中所有参数的个数
这个循环一次
for in "$*"
do
echo $i
done
这个循环多次
for y in "$@"
do
echo $y
done
18 预定义变量
$? 最后一次执行命令的返回状态 如果这个命令执行的结果为0 则证明上一个命令执行正确 否则 执行失败
$$ 当前进程的进程号(PID)
$! 后台运行的最后一个进程的进程号(PID)
19 接收键盘的输入
read [选项] [变量名]
-p "提示信息" 在等待read时给出的提示信息
-t 秒数 read命令会一直等待用户输入,使用此选项可以指定等待时间
-n 字符数 read命令只接收指定的字符数,就会执行
-S 隐藏输入的数据,使用于机密性的信息 比如密码
例子:read -t 30 -p "Please input your name:" name ->表示把输入的信息放入变量name中
Linux中的输入重定向,变量的更多相关文章
- linux中的输入从定向和输出重定向
linux的标准的输入和输出为如下 我们在 linux中执行命令时,命令默认输出到console中,很多时候我们需要将命令输出到其他设备上如最常见的就文件中去,或者重文件中输入.那这时候就需要用到li ...
- linux中配置JDK环境变量
使用的centos版本为 7.5 首先我们要把jdk拷到linux中,这里我们借助XShell工具,我们先来看看Xshell的用法 打开Xshell 后点击文件,“新建“,如下图: 起一个名称,主机填 ...
- Linux中的数据重定向
重定向即指:将数据传送输出到别的地方,如设备.文件等等.那就涉及到将什么数据传送到什么地方的问题. 在linux中命令执行的起源和结果说起,看下图: Standard input和Standard e ...
- Linux中export导入环境变量的几种方式
1.首先类似于windows中的设定系统环境变量的方式为,在/etc/profile中 export PATH=$PATH:....:... 注意间隔符为: 然后复用原来路径是$PATH的方式 2.用 ...
- Linux中涉及到环境变量的文件
1. 系统级 (a) /etc/profile : 在用户登录操作系统时,定制用户环境的第一个文件,应用于登录的每一个用户 ==> 该文件一般调用/etc/bash.bashrc文件 (b)/e ...
- linux中输入输出和重定向问题
输入输出解释 当我们执行shell的时候,每个进程都和三个打开的文件有关系,并使用文件描述符来引用这些文件.但这些文件不容易记忆,所以shell给了相应的文件名: 0:输入文件-标准输入(它的命令是输 ...
- Linux中的预定义变量
解释: 主要是Bash中已经定好的变量,名称不能自定义,作用也是固定的 $? 最后一次执行的命令返回状态,0为成功,非0为失败 $$ 当前进程的进程号 $! 后台运行的最后一个进程的进程号 例子: [ ...
- Linux中的输出重定向
标准输入输出: 键盘 /dev/stdin 0 标准输入 显示器 /dev/stdout 1 标准输出 显示器 /dev/st ...
- Linux中bash shell环境变量
别名 别名是命令的快捷方式.为那些需要经常执行,但需要很长时间输入的长命令创建快捷方式很有用.语法是: alias ppp='ping www.baidu.com' 它们并不总是用来缩短长命令.重要的 ...
随机推荐
- oracle_exp_query_where_clause
每次都忘记这个斜线,记录一下 exp img/123@orclxxx file=d:\bbb.dmp table=(ccc_tab) query=\"where id > 999\&q ...
- 分拆素数和 HDU - 2098
把一个偶数拆成两个不同素数的和,有几种拆法呢? Input输入包含一些正的偶数,其值不会超过10000,个数不会超过500,若遇0,则结束.Output对应每个偶数,输出其拆成不同素数的个数,每个结果 ...
- 在angular中实现下拉框的两种方式 ng-repeat和 ng-option
1. ng-repeat实现下拉框: select下拉框里option组装成下拉框,这里利用ng-repeat指令来创建 实现源码 <!DOCTYPE html> <html&g ...
- css左右居中的几种常见方法
本人是前端的新人,这是第一次写技术博客,各位大大,本文有错误请指正,手中的板砖尽量轻拍,我怕疼~~ 对于水平居中和垂直居中我也用过很多方法,但是有的时候管用有的时候又嗝屁不好使了.涉及到的情况很多,所 ...
- 自己实现多线程的socket,socketserver源码剖析
1,IO多路复用 三种多路复用的机制:select.poll.epoll 用的多的两个:select和epoll 简单的说就是:1,select和poll所有平台都支持,epoll只有linux支持2 ...
- 微服务实战系列--Nginx官网发布(转)
这是Nginx官网写的一个系列,共七篇文章,如下 Introduction to Microservices (this article) Building Microservices: Using ...
- php中的魔术方法
__construct 构造器是一个魔术方法,当对象被实例化时它会被调用.在一个类声明时它常常是第一件做的事但是没得必要他也像其他任何方法在类中任何地方都可以声明,构造器也能像其他方法样继承.如果我们 ...
- SSM项目配置随笔
一.自动扫描 使用Annotation自动注册Bean:在主容器中不扫描@Controller注解,在SpringMvc中只扫描@Controller注解. 1.spring配置文件(扫描注解) &l ...
- WCF启用日志追踪
调用使用http post调用WCF Restful服务时,WCF会自动反序列化body里的实体,如果实体反序列化不成功时,会返回一个请求错误,让去看服务器日志.需要启用日志追踪功能,才能看到具体的情 ...
- RequireJS基础(三)
这篇来写一个具有依赖的事件模块event. event提供三个方法bind.unbind.trigger来管理DOM元素事件. event依赖于cache模块,cache模块类似于jQuery的$.d ...