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' 它们并不总是用来缩短长命令.重要的 ...
随机推荐
- uva1588kickdown
题目要求简述:给定长度分别为n1,n2(n1,n2<=100)且每列的高度只为1或者2的长条.需要将他们放入一个高度为3的容器,问能够容纳它们的最短容器长度. 思路就是固定一个字符串a,字符串b ...
- Mybtis框架总结(一)
一:Mybaits下载并搭建核心框架 1:下载mybatis的jar包: 2:创建mybatis框架链接数据库的配置文件Configuration.xml,格式如下 <!DOCTYPE conf ...
- SpirentTestcenter测试仪的自动化
SpirentTestcenter,美国思博伦公司的网络测试仪表,覆盖以太网L2~L7层,使用过的仪表中功能最强大的. 1.SpirentTestcenter的自动化测试场景 测试PC上的AT框架-- ...
- 读取excel数据,并进行统计输出
package cn.cnnic.ops; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFou ...
- koa2+koa-views示例
app.js var Koa = require('koa') var fs = require('fs') var path = require('path') var koaStaticPlus ...
- Python 3.6.0的sqlite3模块无法执行VACUUM语句
Python 3.6.0的sqlite3模块存在一个bug(见issue 29003),无法执行VACUUM语句. 一执行就出现异常: Traceback (most recent call last ...
- vim编辑器详解
vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率. vi是“visual interface”的 ...
- python画图—黑板客老师课程学习
1.介绍 把每个图都看作一个对象,图中的每一个部分也是对象.——所有的一切都是对象. 工具——ipython notebook 是python里边用的最多的2D&3D的会图库,开源免费库,使用 ...
- Device nodes and device stacks
[Device nodes and device stacks] 链接:https://msdn.microsoft.com/en-us/library/windows/hardware/ff5547 ...
- 介绍开源的.net通信框架NetworkComms框架之四 消息边界
原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 目前作者已经开源 许可是 ...