Linux文件编辑

vim(纯文本编辑器)的三种模式:普通模式,插入模式,末行模式
命令(打开文件的方法):
1.vim file //光标置于第一行行首
2.vim file +n //光标置于第n行
3.vim file + //光标置于末尾行的行首
4.vim file +/pattern //光标置于与pattern匹配的字符串处,pattern为任意字符
vim 字符有颜色标记,很容易差错

普通模式下:
	光标定位:
		hjkl	光标上下左右移动
		0 $ 	跳到光标所在行的行首和行尾
		gg G	跳到行首和行尾
	文本编辑:
		y	复制(以行为单位)
		d	删除(以行为单位)
		p	粘贴
		u	撤销
末行模式:
	保存退出:
		:10	进入第十行
		:q!	不保存强制退出
		:w	保存
		:q	退出
		:wq	保存退出
		:w!	强制保存
		:e /root/aa.txt 打开文件
		:e!	重新打开当前文件
		:x	保存退出(不需要!)
		:X	对文件进行加密
		:$	快速进入末行

	读入文件/写入文件:
		:w	存储到当前文件
		:w /agan6.txt	另存为/agan6.txt
		:1,3 w agan/txt	另存1-3行,生成新文件为agan6.txt
		:r /etc/hosts	读入文件到光标所在行后
		:5 r /etc/hosts	读入文件到第5行后

	查找替换:
		语法格式:
			:范围  s /old/new选项
			例如:
				:1,6 s/root/agan/ 把1-6行替换为agan
				:%  s/root/agan/g	  %表示全文,g表示全局(备注:全文值替换行首,全局替换所有)
				:6,$ s/root/agan/g  $表示最后一行
				:1,9 s/^#//	  1-9行的开头#替换为空,批量取消注释
				:% s/^/#/	   给所有行加上#注释掉

设置环境:
临时设置:
:set nu 设置行号
:set nonu 取消设置行号
永久设置:
~/.vimrc //影响当前用户
/etc/vimrc //影响所有系统用户
例如:
[root@agan~]# vim.vimrc
set nu
备注:把环境设置写入到配置文件末尾处
验证临时还是永久,重启一下

练习教程:
vimtutor zh 中文版
vimtutor 英文版

查看自己的文件内容:
命令有:cat more less head tail
cat查看文件内容
more,less分页查看文件内容
head查看文件头部内容
tail查看文件尾部内容
cat:
语法:cat [option] [file]
常用选项:
-n 从1开始对所有输出内容按行编号,不忽略空白行
-b 忽略显示空白行,只显示有内容的行
范例1:
编辑新文件:
例如:cat > text1.txt << EOF
> ni
> hao
> ma
> EOF
备注:使用>>符号,可实现非交互式编辑
利用>>追加信息,否则直接全部覆盖
范例2:
合并多个文件
cat text1 text2 text3 > new1
范例3:
清空文件内容,保留文件
cat /dev/null > text1.txt
备注:这里不能多次清空
查看文件more命令:
语法格式:more [option] [file]
常用选项:
+num 从第num行开始显示
-num 定义屏幕显示行数
常用操作:
v 调用vi编辑器
b 返回上一屏
= 输出当前行
q 退出more的动作
less:
类似more,可以分页显示文件内容,比more强大
语法格式:
less [option] [file]
常用选项:
-i 搜索时可以忽略大小写
-N 每行前输出行号
-p 后面跟被搜索的字符
! 调用shell执行命令
范例1:在/etc/profile搜索单词MAIL
1.less -p MAIL /etc/profile
2.less -ip mail /etc/profile
范例2:搜索字母a的同时显示行号
less -N -p a /etc/yum.conf
范例3:分页显示目录下的内容
ls /etc/ | less
head:显示头部内容,默认10行
语法:head [option] [file]
常用选项说明:
-n 行数 指定显示的行数
范例1:显示文件的前5行
head -5 /etc/yum.conf
head -n 5 /etc/yum.conf
范例2:最后10行不输出
head -n -10 /etc/yum.conf
tail:显示文件的尾部,默认10行
常用选项说明:
-n 行数 //指定显示的行数
-F //实时输出文件变化后追加的数据
范例1:显示文件末尾5行的内容
tail -n 5 /etc/yum.conf
tail -5 /etc/yum.conf
范例2:实时监控日志的变化(生产中常用的场景是监控日志文件)
tail -F /var/log/secure
备注:shell开启两个接口,一个监控,一个登录,观察实时信息

resyslogd:系统的日志子程序记录大部分操作系统相关的日志记录。各类程序以自己的方式记录日志
	常见日志文件:
		1、/var/log/boot.log

			一般包含系统启动时的日志,包括自启动的服务。

		2、/var/log/btmp

			记录所有失败登录信息。非文本文件,可以使用last -f /var/log/btmp进行查看。

		3、/var/log/cron
			cron计划任务的日志,每当cron任务被执行的时候都会在这个文件里面记录。

		4、/var/log/dmesg
			包含内核缓冲信息(kernel ring buffer)。在系统启动时,会在屏幕上显示许多与硬件有关的信息。可以直接查看这个文件或者使用dmesg这个命令查看。

		5、/var/log/lastlog
			记录所有用户的最近信息。非文本文件,可以使用lastlog进行查看。

		6、/var/log/maillog
			包含来着系统运行电子邮件服务器的日志信息。

		7、/var/log/message
			包括整体系统信息,其中也包含系统启动期间的日志。此外,mail,cron,daemon,kern和auth等内容也记录在var/log/messages日志中。

文件的压缩和解压缩:
tar:打包压缩,解压文件
tar [option] [file]
常用选项说明:
z //有gzip属性的
c //创建新的tar包
v //显示详细的tar命令过程
f //指定压缩文件的名字
x //解压tar包
C //指定解压的目录路径
–exclude=PATTERN //打包时排出不需要处理的文件或目录

范例1:文件的压缩
	tar -cvf jpg.tar *.jpg  //将文件里所有jpg文件打包成jpg.tar
	tar -czvf jpg.tar.gz *.jpg  //将文件里所有jpg文件打包成jpg.tar.gz
	tar -cvf jpg.tar *.jpg --exclude=6.jpg	//排除6.jpg不压缩
	tar -cvf jpg.tar *.jpg --exclude={2...6}.jpg	//排除2-6.jpg不压缩
	tar -cvf jpg.tar *.jpg --exclude=2.jpg --exclude=4.jpg	//排除不连续的2和4不压缩
	unzip -r agan.zip text1.txt 	//把text1.txt压缩成名为agan.zip的文件

范例2:文件的解压缩
	tar -xvf jpg.tar	//解压tar包
	tar -xzvf jpg.tar.gz	//解压tar.gz包
	tar -xvf jpg.tar -C /agan 	//解压到指定路径
	unzip agan.zip	//解压缩*.zip的文件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凉水沏茶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值