您的位置:首页 > 运维架构 > Linux

DAY4《Linux就该这么学》

2019-07-12 22:03 1046 查看

输入输出重定向

标准输入重定向(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 ~]# echo
uname -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。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: