云计算(Day 4)
命令
vim 文本编译器 vi
命令模式:
d + enter :删除光标所在行以及光标下一行
dd 删除光标所在行
x 删除光标所在字符
Ndd 3dd 删除光标行开始一共三行
dG 光标所在行到文档尾
dgg 光标所在行到文档首
s 字符替换,替换光标所在字符
yy 复制光标所在行 4yy
p 粘贴在光标所在的下一行
cc 剪切光标所在行
G 跳转到文档尾的行首
gg跳转到文档首的行首
^ 跳转到行首
$ 跳转到行尾
u 向左撤销
ctrl-r 向右撤销
命令模式进入插入模式
a 插入到光标后
A 插入到行尾
i 插入到光标前
I 插入到行首
o插入到下一行
O插入到上一行
s 删除光标字符进入插入模式
S删除光标行进入插入模式
末行模式:
:wq
:q
:q!
:wq!
:15到哪一行
:set nu:显示行数
/root 匹配root关键词
:noh退出光标
:1,5 co 10
:% s/root/000/ 关键字符替换,替换的是每一行中第一次匹配的root关键词
:% s/root/ooo/g替换的是每一行中所有匹配的root关键词
:r FILENAME 吧指定文件内容读取当前文件按光标的下一行
.*:
正则符:.任意单个字符(数据内容)
*匹配前一个字符任意次
通配符:*任意长度的任意字符(文件名)
?匹配任意单个字符
文本内容处理命令
echo:打印命令(标准输入输出的命令)
echo hellowworld
$引用变量
”“弱引用符(可以解释特殊含义的字符)
’‘强引用(不解释特殊含义的字符)
``命令替换符
$()命令替换符
linux中文件的描述符 0:标准输入 1:标准输出(正确输出)2:错误输出
符号:>输出重定符(将程序的内容输出重定到文件–将内容写入文件,回覆盖源文件的内容)
:>>输出追加重定向符
:<输入重定向符
:<<终止结束符
head /etc/passwd >file
tail /etc/passwd >>file
cmd 2>file1 把cmd的错误结果输入到file文件
cmd &> file1 &表示1和2,把cmd正确或错输出写入到file文件==cmd 1>file1 2>&1
| 管道符(无名管道)前一个命令的输出结果安照字符流的形式通过管道符连接后一个
|tee T型管道 横向输出将前一个命令的标准输出作为后面文件的标准输入
纵向输出将前一个命令的标准输出直接在终端打印显示
|tee==> |tee -a==>>
cut:剪切 (文件的进行处理,不会对源文件有影响)
-c 字符
-d 分割字符
-f分割字段
sort:文本内容排序
默认按照文件行的字符进行比较(从小到大)
-r 降序(从大到小)
-n 按照数值比较
-u 去重
uniq 去重,重数行必须相邻
sort aaa|uniq
-c显示重复次数
-d显示文件重复出现的内容
-D显示重复行
wc:文本统计
wc FILENAME 统计指定文件的行,单词数,字节数
-l统计行数
-w统计单词书
-m统计字符数
-c统计字节数
tr:字符替换命令
tr set1 set2
[root@www ~]# echo helloword | tr l 0 把l字符替换成0字符
[root@www ~]# echo helloword |
[root@www ~]# echo helloword | hl 0 把h以及l字符替换为0字符
[root@www ~]# echo helloword | l 01 把l字符替换成0字符
[root@www ~]# echo helloword | -t hl 0 等长字符替换,把h字符替换成0字符
[root@www ~]# echo helloword | -c l 0 反选定:除了l字符之外的字符替换成0字符
[root@www ~]# echo helloword | -d hl 删除字符:删除hl字符
[root@www ~]# echo 1 2 3 |tr -s "" ""
将多个连续重复字符替换为单个字符,将多了连续重复的空格字符替换成单个空格字符
#df -h 查看文件系统使用情况
[root@www ~]# df -h | tr -s "" "" |cut -d " " -f 4
grep:文本过滤
格式: grep '关键字' FILENAME
grep 'root' /etc/passwd 过滤关键字,有root关键字行打印到终端
grep -o 'root' /etc/passwd 过滤关键字,只把root关键字打印到终端
grep -i 'ROOT' /etc/passwd 过滤关键字乎略大小写
grep -v 'root' /etc/passwd 过滤关键字,把没有关键字的行显示
#cat /etc/login.defs
grep -v '^#' /etc/login.defs ^#以#号开头
grep -v '^#' /etc/login.defs | grep -v '^$' ^$ 空白行
作业题:
1.课程笔记总结
2.将/etc/passwd 文件中3,4 字段分别截取出来分别写入文件UID和文件GIU但是这两个文件中的信息是以数值由大到小的形式显示;
3.通过查看时间命令将分别将年月日时分写入A文件
4.告诉用户当前系统有多少用户 (/etc/passwd文件有多少行一行是一个用户信息)。
5.不显示/etc/login.defs 文件中以#开头的行以及空白行。