vim常用命令

行号:
显示行号:   set number (命令模式下)
取消行号:   set nonumber(命令模式下)
默认显示行号:
一: 编辑/etc/vimrc 文件  vim /etc/vimrc
二:在文件开端 插入   set number

vim 编辑器
	1.vim的三种使用模式
		① vim + 文件名 进入文件 (当前处于命令模式)
		② 命令模式下输入 i o a 进入文本编辑模式 (按Esc键退出编辑模式进入命令模式)
		③ 命令模式下输入 : 进入末行模式,编辑输入命令以回车结束运行
		④ 末行模式下输入 wq 回车保存退出

	2.编辑模式下的命令常用操作
		① 插入
			i 在光标所在字符前插入
			I 在光标所在行前插入
			a 在光标所在字符后插入
			A 在光标所在行尾插入
			o 在光标下插入新行
			O 在光标上插入新行
		② 定位
			小范围移动 h j k l 对应方向左上下右,可替换方向键使用
			:set nu + 回车		设置行号
			:set nonu + 回车	取消行号
			数字 + 回车 		当前行数向下移动之前数字的行数
			gg 					到文章第一行
			G 					到文章最后一行
			nG 					到第n行
			:n + 回车 			到第n行
			$					移至行尾
			0					移至行首
			^					移至行首
		③ 删除
			x 					删除光标所在字符
			nx 					删除光标所在后n个字符(包含光标所在字符)
			D					删除光标所在字符至行尾(包含光标所在字符)
			dd					删除光标所在行(整行删除,光标移至下一行)
			ndd					删除光标所在后n行(包含光标所在行)
			dG					删除光标所在行至结尾(包含光标所在行)
			dgg					删除光标所在行至行首(包含光标所在行)
			:n1,n2d+回车 		删除指定范围的行数
		④ 复制和剪切
			yy					复制当前行
			nyy					复制当前以下n行
			dd					剪切当前行
			ndd					剪切当前以下行数
			P,p 				在光标所在行上下粘贴
		⑤ 替换和撤销(命令模式下)
			r					取代光标所在字符
			R 					开启替换模式直到按Esc结束
			u					撤销
			Ctrl + r 			反撤销
		⑥ 搜索和替换
			/string 			查找指定字符串
			n 					从结果中查找下一个
			N 					从结果中查找上一个
			:%s/old/new/g 		全文替换指定字符串
			:%s/old/new/c 		全文替换指定字符串,每次替换询问
			:n1,n2s/old/new/g 	在指定范围替换指定字符串
		小技巧
			:1,5s/^/#/g 		注释1到5行
			:1,5s/^#//g 		取消注释
			:1,5s/^/\/\//g 		文件头加上//
			:1,5s/^\/\///g 		取消//
		⑦ 保存和退出
			:w 					保存修改
			:w 	newfilename 	另存为新文件名
			:wq 				保存并退出
			ZZ 					保存并退出
			:q! 				不保存修改直接退出
			:wq!				保存修改并退出(文件所有者或root可用)
			x      				保存修改并退出没有修改的话不会更新时间
		⑧ 显示颜色高亮
			:noh 				不要高亮
			:syntax on 			开启颜色
			:syntax off 		关闭颜色
	vim配置文件
		自定义配置 		~/.vimrc文件,没有手动创建,写入设置及时生效

linux常用命令
	基础:
		ls  	直接回车,显示目录下内容
		ls -l 	长格式显示

		-rw-------    1   root    root    1190    08-10 23:37     anaconda-ks.cfg
		权限位     引用数 所有者  所属组  大小  最后一次修改时间      文件名

		ls -a 	显示所有文件(包含隐藏文件)
		ls -la 	多个参数合并简写(大多可无需组合)
		ls -h 	文件大小显示为常见大小单位 B KB MB
		ls -d 	显示目录本身而不是里面的子文件
	文件颜色及类型
		默认色代表普通文件
		绿色代表可执行文件
		红色代表tar包文件
		蓝色代表目录文件
		粉色代表图像文件
		青色代表链接文件
		黄色代表设备文件
		背景红色代表损坏的链接文件
		更多的文件颜色详见:/etc/DIR_COLOR
	常见文件类型
		-普通文件
		d目录文件
		l链接文件
	命令提示符
		[root@localhost src]#
		[当前登录用户@主机名 当前所在目录]#
		#超级用户
		$普通用户
	当前所在目录
		用户家目录~
		管理员 /root
		普通用户 /home/用户名
	Linux系统严格区分大小写,包括命令和文件名

	目录操作命令
		cd 	切换所在目录
			cd ~	进入当前用户的家目录
			cd 		进入当前用户的家目录
			cd -	进入上次目录
			cd ..	进入上一级目录
			cd . 	进入当前目录
		pwd显示当前所在目录

		Linux常见目录
			/ 	根目录
			/bin 	命令保存目录(普通用户就可以读取的命令)
			/boot 	启动目录启动相关文件
			/dev 	设备文件保存目录
			/etc 	配置文件保存目录
			/home  	普通用户的家目录
			/lib 	系统库保存目录
			/mnt 	挂载目录
			/root 	超级用户的家目录
			/tmp 	临时目录(重启后可清空)
			/sbin 	命令保存目录(超级管理员才能使用的目录)
			/proc 	记录服务器内存和CPU情况的动态文件系统
			/sys 	记录服务器内存和CPU情况的动态文件系统
			/usr 	系统软件资源目录
				/usr/bin/ 	系统命令(普通用户)
				/usr/sbin/ 	系统命令(超级用户)
				/usr/local/ 常用安装软件目录
			/var 	系统相关文档内容
				/var/log/ 	系统日志位置
				/var/spool/mail/ 	系统默认邮箱位置
				/var/lib/mysql/ 	默认安装的MySQL的库文件目录
		mkdir 	建立目录
			mkdir -p 11/22/33/44 	-p是递归,一次性建立多个递归文件夹

		rmdir   删除目录(只能删除空目录)
			rm 	文件名 	删除文件
			rm -r 	递归删除目录
			   -f	强制取消询问模式
			   -rf 	删除文件和目录

	文件操作命令
		touch 	创建空文件或修改文件时间
			touch filename

		rm 	删除
			rm -rf 	文件名
			   -r 	删除目录	
			   -f 	强制

		cat 	查看文件内容,从头到尾
			cat -n 文件名
				-n列出行号

		more 文件名 分屏显示文件内容
			f向下翻页
			Enter逐行向下翻页
			空格向下翻页
			b向上翻页
			q退出

		head 文件名 	显示文件头
			head -n 行数 文件名 	指定显示文件头几行
			head -n 20 文件名
			head -20 文件名

		tail -n 行数 文件名 	指定显示文件尾行

		ln 链接文件 (文件名都必须写绝对路径,否则软连接移后失效)
			ln -s 	源文件 	目标文件 	//软链接,相当于Windows快捷方式
			ln 		源文件 	目标文件 	//硬链接,拷贝加同步更新
										//不能给目录不能跨分区

	文件和目录都能操作的命令
		复制
			cp 源文件  目标位置 	
			cp aa /tmp/ 	原名复制
			cp aa /tmp/bb 	改名复制

		剪切或改名
			mv 源文件 目标位置
			mv /root/aa /tmp/
			mv aa bb

	权限管理
		分析权限位
			-rw-------.    1   root    root    1190    08-10 23:37     anaconda-ks.cfg
			权限位     引用数 所有者  所属组  大小  最后一次修改时间      文件名

			权限位是十位
				第一位:代表文件类型
					-	普通文件
					l 	链接文件
					d 	目录文件

				后九位:属主权限u 	属组权限g 	其他人权限o
					r 	读 				4
					w 	写 				2
					x 	执行(execute) 	1
				(后续)10 . selinux 相关 + acl权限

		修改权限 chmod
			逻辑描述法:
				chmod u+x aa 		aa文件的属主加上执行权限
				chmod u-x aa 		aa文件的属主减去执行权限
				chmod g+w,o+w aa 	多个身份用','分隔
				chmod u=rwx aa 		aa文件的属主不考虑当前权限直接赋予指定权限
				chmod a-x aa 		a代表所有身份(u,g,o)
			数字描述法(二进制法)
				chmod 755 aa
				chmod 644 aa

		添加用户
			useradd 用户名 	#添加用户
			passwd 	用户名 	#为用户设置密码
			su 		用户名 	#切换到其他用户				
		实验
			root用户创建一个目录(默认rwxr-xr-x),在目录中新建一个文件,
			然后将新建的文件设为777,普通用户不能删除该文件

			原因:rwx权限对于目录和文件,实际意义是不一样的
				文件:
				r	cat  more  head  tail   	查看文件内容
				w	echo  vim					修改文件内容
				x	sh 	(execute)				执行	
				目录:
				r	ls  find  tree			列出文件
				w	touch  mkdir  rm		创建删除文件
				x	cd						进入目录
			结论:
				对文件有写权限,只代表可以修改这个文件,要想删除文件,需要对文件所在目录有写权限。
				只要对目录有写权限,目录中的文件,就算是root创建的,普通用户一样能删除。
			赋予权限要合理
				对目录w权限,就意味着需要有rwx
				对脚本执行,需要rx 并对该目录有rx权限

		修改属主和属组
			chown 用户名 文件名 	改变文件属主
			chown user1 aa 			user1用户必须存在
			chown user1:user1 aa 	改变属主同时改变属组
			chgrp 组名 文件名 		改变文件属组

		问题:
			为何新建文件权限644,新建目录755?

		答:
			创建文件的默认权限掩码值umask显示0022第一位特殊权限位不提,
			其他为三类用户的权限掩码值,用做大权限777减去掩码值就是创建文件的默认权限

		疑问:
			新建目录mkdir 	test		默认是755权限
			新建文件touch 	file     	默认是644权限
		
		解答:
			Linux安全机制,不给新建文件X权限。

	帮助命令
		man		查看命令的帮助(只用于有文件实体的命令)
		help 	查看shell内核命令

	查找命令
		whereis  命令名		查找命令的命令,同时看到帮助文档位置
		which	还可看到命令别名
		find	搜索文件命令	
		准备知识:
			通配符——常用于文件查找
				*		任意字符任意多个
				?		任意字符一个
				[] 		指范围值
				^		反向匹配
			正则表达式——常用于内容查找
				. 		除换行外任意符号
				*		任意个
				? 		0或1个
				^		开头
		find  查找位置   -name  文件名
		find  	/  		-name  	aabbcc		精确查找文件aabbcc
		find	/etc	-name	init*		查找在/etc下以init开头的文件
						-user  	用户名		按照属主用户名查找文件
						-group  组名		按照属组组名查找文件
		find 	/  		-size  	+50k		查找/下大于50k的文件
						-type 	类型		按照文件类型查找 f:普通 d:目录 l:链接
		find  	/root  	-perm  	644			按照权限查找
						-iname				按照文件名查找,不区分大小写
		find 	/ 		-inum 	2739078		按照i节点查找
		find 	/etc 	–size -10M -a -size +1M	查找小于10M并大于1M的文件(-o或者)

		find 	/etc 	-name inittab -exec ls -l  {}  \;	找到文件后查看详情
						{}	表示find查询的结果集
						\	是转义符  表示一个命令或符号使用其本身的意义,不使用别名
						;	分号是表示语句的结束
						{} \;	固定格式,只能这样写。注意中间的空格。
		转义符的作用是什么?
			在linux中有一个别名机制,如rm删除文件,执行的却是rm -i(用which rm 可以查看命令别名),
			使用rm删除文件前会提示,就是因为rm -i这个参数。如果想使用命令原意,可以在加\转义,
		如:\rm test.txt   则不会提示,直接删除

		grep	“字符串”  文件名		查找符合条件的字串行。
		grep  	-i  “root”  /etc/passwd
				-v		反向选择
				-i 		忽略大小写
		find:
			在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符匹配。通配符是完全匹配。
		grep:	
			在文件当中搜索符合条件的字符串,如果需要匹配,使用正则表达式匹配,正则表达式是包含匹配

	压缩和解压缩
		tar  -zcvf  压缩文件名  源文件
		tar  -zcvf  aa.tar.gz  aa
			 -z  压缩.gz格式		-j	压缩.bz2格式
			 -c:打包
			 -v:显示压缩过程
			 -f:指定压缩包名
		注意:选项f必须在最后,否则报错。
		tar  -zxvf  压缩文件名		解压缩同时解打包
			 -x	解压缩

		tar  -ztvf  aa.tar.gz		查看不解包
		tar  -jtvf  aa.tar.bz2
			 -t  只查看,不解压

		tar  -jxvf root.tar.bz2 -C /tmp/	指定解压缩位置

	网络命令
		ping	测试网络连通性
			ping  -c  次数  ip		探测网络通畅
		ifconfig  查询本机网络信息(类似windows中的ipconfig /all)

	关闭和重启命令
		shutdown  -h  now	没有特殊情况,使用此命令
				  -h  关机
				  -r  重启  等同于	reboot

	挂载命令
		光盘挂载
			mount  -t  文件系统  设备描述文件  挂载点(已经存在空目录)
			mount  -t  iso9660  /dev/cdrom  /mnt/cdrom
		光盘卸载
			umount  /dev/cdrom 
			umount  /mnt/cdrom 		强调:退出挂载目录,才能卸载

shell小技巧
	什么是shell?
		命令解析器,帮助人机交互的翻译官!
		windows的桌面也是shell的一种!
		( ( ( (硬件)内核)shell命令解释器)外层应用程序)

	使用Tab键命令补全

	快捷操作
		CTRL+C 终止命令
		CTRL+A 光标到行首
		CTRL+E 光标到行尾
		CTRL+U 剪切光标前内容
		CTRL+K 剪切光标后内容
		CTRL+Y 粘贴剪切的内容
		CTRL+L 清理屏幕
		CTRL+D 注销登陆相当于exit和logout或者保存
		CTRL+Z 将进程在后台挂起
		CTRL+R 出现'':自动补全最近一次相关命令

	命令历史
		history		列出所有的命令(默认最多保存条数1000)
		!序号		执行历史中第几个命令		
		!命令		执行最近的这条命令
		按向上(或向下)箭头,翻出历史记录	
		家目录 .bash_history
		
	命令别名
		添加一个别名(临时):
			alias copy=cp    就可以用copy来复制文件了
		如果有参数:
			alias drm="rm -rf"
		删除别名:
			unalias copy
		
		别名永久生效:在用户宿主目录 ~/.bashrc 文件中添加别名信息如:alias vi=vim。
		重启生效或者source  ~/.bashrc及时生效









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值