DAY4《Linux就该这么学》
输入输出重定向
标准输入重定向(STDIN,文件描述符为0):默认从键盘输入,也可从其他文件或命令中输入。
标准输出重定向(STDOUT,文件描述符为1):默认输出到屏幕。
错误输出重定向(STDERR,文件描述符为2):默认输出到屏幕
echo "13123" | passwd --stdin root 将输出的内容重定向给passwd需要输入的内容
命令 < 文件 将文件作为命令的标准输入
命令 << 分界符 从标准输入中读入,直到遇见分界符(终止符)才停止
[root@linux ~]# echo "123123123" <<5
1
1
1
1
23
34
5
123123123
命令 < 文件1 > 文件2 将文件1作为命令的标准输入并将标准输出到文件2
命令 > 文件 将标准输出重定向到一个文件中(清空原有文件的数据)
命令 2> 文件 将错误输出重定向到一个文件中(清空原有文件的数据)
命令 >> 文件 将标准输出重定向到一个文件中(追加到原有内容的后面)
命令 2>> 文件 将错误输出重定向到一个文件中(追加到原有内容的后面)
命令 >> 文件 2>&1 或命令 &>> 文件
注:重定向前面加2就是表示错误信息输出,>>表示追加
管道符|
也叫任意门,将前面输出到屏幕的内容输入到后面使用。
grep "/sbin/nologin" /etc/passwd | wc -l
等同于统计了在sbin文件内共有多少个nologin的行数
*:通配任意字符
?:匹配单个字符
A-Z:单个字符包含A-Z
\:反斜杠,将单个变量变成字符串
"":保留变量属性,不做任何处理
`:反引号,将里面的变量执行后输出<br/>[root@linux ~]# echouname -a`
Linux linux.com 3.10.0-957.21.3.el7.x86_64 #1 SMP Tue Jun 18 16:35:19 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
alias别名
[root@linux ~]# network=/etc/sysconfig/network-scripts/ifcfg-eth0
[root@linux ~]# cat $network 加$标识后面的是一个变量===
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
unalias network :撤销变量赋值
alias查看那些别名存在
export etwork有root能用network这个变量,那么linux这个用户也能用了。
[root@linux ~]# export network
[root@linux ~]# su yy
[yy@linux root]$ cat $network
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
[root@linux ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
PATH:标识命令所存在系统的位置。我们输入的所有命令都是存在系统文件目录中,也可以通过type + 命令查看,该命令是内部命令还是外部命令,99%都是外部命令,输入命令也就是系统的解释器进行解释后输出变量的值而已。
[root@linux ~]# type vi
vi is hashed (/usr/bin/vi)
[root@linux ~]# type pwd
pwd is a shell builtin
可以通过该命令查看到是否存在特殊目录。
RANDOM:随机值
vim的使用
dd:剪切整行
5+dd:剪切光标处开始的5行
yy:复制
5+yy:同5+dd
p:粘贴
?+字符串:全文从下往上搜索该字符串
/+字符串:全文从上往下搜索该字符串
u:撤销一步
SHELL
执行方式:交互式or批处理
[root@linux ~]# echo $SHELL
/bin/bash
默认使用bash作为终端解释器
#!文件名
#注释说明
$#:共计数量
$0:脚本名称
$*:输出所有内容
$1:第一个参数值
[root@linux ~]# vim example.sh
#!/bin/bash
echo "当前脚本名称为$0"
echo "总共有$#个参数,分别是$*。"
echo "第1个参数为$1,第5个为$5。"
[root@linuxprobe ~]# sh example.sh one two three four five six
当前脚本名称为example.sh
总共有6个参数,分别是one two three four five six。
第1个参数为one,第5个为five。
- 8.7 Day4
- Python之路,Day4 - Python基础4 (new版)
- SHELL训练营--day4--正则1
- Java的新项目学成在线笔记-day4(五)
- 数据库学习Day4
- Python基础语法学习-Day4
- day4
- 【Java入门提高篇】Day4 Java中的回调
- Python学习day4 数据类型Ⅱ(列表,元祖)
- MySQL学习笔记DAY4——SQL函数
- DAY4|初步了解Linux文件系统结构~
- 《30天精通iPhone手机编程》-Day4-设置文件setting bundle
- day4 test04
- DAY4 系统的学习HTML 的语法
- 黑马程序员_ios基础入门学习_C语言day4
- Day4-文本显示
- 2015湖南省队集训DAY4——hoodle
- 《Linux就该这么学》 - 必读的红帽系统与红帽linux认证自学手册
- Day4之FuctionOverload
- OC基础day4-继承,self,super,多态,类对象,SEL类型,description,私有方法与私有变量,三种访问限制