day04
date查看主机的时间信息
vim 文本编辑器(vi)
vim filname 应用vi命令下创建文件
例vim /boot/tmp
命令模式:
/g/目标/d = % s/.目标/ /g 在文档中查找含有目标的行,整行删除
d+enter 删除光标所在行及光标下一行
dd 删除光标所在行
x 删除光标所在字符
Ndd 3dd 删除光标行开始一共三行
3,5删除3-5行内容
dG 删除光标所在行到文档尾 dgg 删除光标所在行到文档首、
s 字符替换,替换光标所在字符
yy 复制光标所在行 4yy
p 粘贴在光标所在的下一行
cc 剪贴光标所在行
G 跳转到文档尾的行首
gg 跳转到文档首的行首
^ 跳转到行首
$ 跳转到行尾
.*
正则符
. 任意单个字符(数据内容)
*匹配前一个字符任意次
通配符
*任意长度任意字符(文件名)
?匹配任意字符
vim或vim file进入命令模式(没有任何信息,显示文件名)
:n(行数)按a切换到insert在行尾按回车
(找到自己要找的那行进入insert模式在行尾按回车即可得到新的空白的下一行)
insert(中的最后一行显示insert,编辑文件内容)编辑文件内容
esc退出回到命令模式
:进入末行模式
esc回到命令模式
/g表全部,所有
u 向左撤销(左=上一行)
ctrl-r 向右撤销(右=下一行) 命令模式进入插入模式的方式
a 插入光标后
A 插入光标行尾
i 插入到光标前
I 插入到行首
o 插入到下一行
O 插入到上一行
s 删除光标字符进入插入模式
S 删除光标进入插入模式
末行模式 :
:.! 读取(显示在第一行)
例 :.!date(读取主计时间)
:wq 保存退出
:q 推出
:q! 强制退出
:wq!强制保存退出
:15
w:保存
w /文件名:另存为.....
:set nu开启VI的行提示功能
/root 匹配root关键字
:noh 取消高调显示
:a co b 表示把第a行的内容复制到第b行
例子 :1 co 213
:% s/root/000/ 关键字符替换,替换的是每一行中第一次匹配的root关键字7
:% s/ root/ 000/g关键字替换,替换的是每一行中所有匹配的root关键字
:r FILENAME 把指定文件内容读取到当前文件光标的下一行
文本内容处理命令
echo 打印命令(标准输入输出的命令)
echo hellowworld [root@www ~]# echo hellowword(输入hellowword) hellowword [root@www ~]# echo $HOSTNAME(查询主机名) www.baiyiwei.com $ 引用变量 [root@www ~]# echo "$HOSTNAME" www.baiyiwei.com “” 弱引用符(可以解释特殊含义的字符) [root@www ~]# echo '$HOSTNAME' $HOSTNAME ``命令字符(将``内的字符识别为命令) [root@www ~]# echo 当前主机时间$(date) 当前主机时间Sat Nov 26 15:21:56 CST 2022 $() 命令替代符
[root@www ~]# vim /etc/passwd通过vim进程查看文件详细信息
linux中文件的描述符,0标准输入,1标准输出
(正确输出),2错误输出
> 输出重定符(将程序的内容输出(前提)重定到指定文件--将内容写入文件,回覆盖源文件内容)
[root@www ~]# echo 1234 > file111 [root@www ~]# cat file111 1234 [root@www ~]# echo abcd >file111 [root@www ~]# cat file111 abcd>>输出追加重定向符 [root@www ~]# echo 11111 >>file111 [root@www ~]# cat file111 abcd 11111
< 输入重定向符 [root@www ~]# cat < file111 abcd 11111
<< 终止结束符 [root@www ~]# cat << . > abc > 123 > . abc 123head /etc/passwd > file tail -2 /etc/passwd >> file cmd 2> file 把cmd的错误结果输入到file文件 cmd &> file & 表示1和2 把cmd真确或者错误输出写入到file1文件| 管道符(无名管道0前一个命令的输出结果安照字符流的形式通过管道符连接后一个命令进行处理(前提确保程序有输出结果)
|tee T型管道 横向输出将前一个命令的标准输出作为一个后面文件的标准输入
[root@www ~]# head -2 /etc/passwd |tee file111 root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin
[root@www ~]# cat file111 root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin
纵向输出将前一个命令的便标准输出直接在终端打印显示 head -2 /etc/passwd |tee file111 == cat file111
文本处理相关信息,文件的行进行处理
cut 剪切
-c 字符
root@www ~]# cat file111 root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin [root@www ~]# cut -c 1-2 file111 ro bi [root@www ~]#-d 分割字符 -f 分割字段
[root@www ~]# cut -d : -f 3 file111(3指所找字符所在位置(:不算))
0 1 [root@www ~]#
sort 文本内容 排序
默认按照文件行的字符进行比较
-r 降序
[root@www ~]# cat file2 123 123 3445 32431 123344 3 434 4 313 [root@www ~]# sort -nu file2 3 4 123 313 434 3445 32431 123344 [root@www ~]#[root@www ~]# sort file2 | uniq -c 2 123 1 123344 1 3 1 313 1 32431 1 3445 1 4 1 434 [root@www ~]# 有一个重复次数的显示 sort file2 | uniq -c | sort有一个重复次数的显示并且把重复次数最多放在最后一行 sort file2 | uniq -c | sort | tail -1只显示重复次数最多的那个和他的重复次数
wc 文本统计 word count
wwc FILENAME 统计指定文件的行,单词书吗,字节数 一个中文站3个字节 -l 统计行数 -w 统计字节 -c 统计 [root@www ~]# wc -l file2 9 file2 (每一次统计会显示出文件名) echo "file文件一共有'wc -l file| cut -d ' ' -f 1'行"uniq 去重,重复行必须相邻
-c 显示重复次数 -d 显示文件重复内容 -D 所有重复行[root@www ~]# sort file2 | uniq -d 123 [root@www ~]# sort file2 | uniq -D 123 123 [root@www ~]# sort file2 | uniq 123 123344 3 313 32431 3445 4 434 [root@www ~]#tr 字符替换命令
[root@www ~]# echo hellow | tr l 0 he00ow 把hellow中的l替换成了0 -c 反替换符 [root@www ~]# echo hellow | tr -c l 0 00ll000[root@www ~]# 反选定把除了l之外的字符替换成0 -t [root@www ~]# echo hellow | tr hl 0 0e00ow 把h和l都替换成0 [root@www ~]# echo hellow | tr -t hl 0 等字符替换,把h替换成0 [root@www ~]# echo hellow | tr -t hl 01 0e11ow 把hl替换成01,即h替换成0l一换成1 [root@www ~]# echo hellow | tr -d hl eow [root@www ~]# echo hellow | tr l 01 he00ow 只把l替换成0 [root@www ~]# echo hellow | tr -d hl eow 删除字符,删除hl [root@www ~]# echo 1 2 3| tr -s " " " " 将多个连续重复的字符替换为单个字符:将多了连续重复的字符的空格字符替换成单个空格字符 df -h 查看文件系统使用情况 grep文本过滤显示命令
格式: grep ’关键字‘ FILENAME grep 'root'/etc/passwd 过滤关键字,有root关键字打印到终端 grep -i'ROOT' /etc/passwd 过滤关键字忽略大小写 grep -o 'root' /etc/passwd/ 过滤关键字,只把root关键字打印到终端 grep -v 'root' /etc/passwde 过滤关键字,把没有关键字的显示 cat /etc/login.defs grep -v '^#'/etc/login.defs ^#以#号开头 grep -v '^#' /etc/login.defs | grep -v '^$' ^$空白行
nano 文件名
(编辑文件,文本编辑)
^x退出(按ctrl 和x快捷退出)