注:如果文档未正常关闭,则会在当前目录生成一个隐藏文件:.filename.swp 删除即可
yum install -y vim-enhanced yum install -y vim
[root@localhost ~]# rpm -qf which vim
\查看vim的安装文件
vim-enhanced-7.4.160-5.el7.x86_64
2. 语法
vim !$ | !$表示上一条命令的最后一个参数 |
---|---|
vim +10 filename | 把光标定位到filename的第10行。 |
!vim | 执行上一次vim的命令 |
一般模式移动光标 | |
h或左方向键 | 光标向左移动一个字符 |
l或右方向键 | 光标向右移动一个字符 |
k或上方向键 | 光标向上移动一个字符 |
j或下方向键 | 光标向下移动一个字符 |
Ctrl+f或pageup | 光标向前(上)移动一页 |
Ctrl+d或pagedown | 光标向后(下)移动一页 |
0或shift+6 | 移动到本行行首(shift+6是非空格的行首) |
Shift+4 | 移动到本行行尾 |
gg | 移动到首行 |
G | 移动到尾行 |
nG(n是任意数字) | 移动到第n行 |
x,X | x向后删除(剪切)一个字符,X向前删除(剪切)一个字符 |
nx (n是任意数字) | 删除一个字符 |
dd | 删除或剪切光标所在的一行 |
ndd | 删除或剪切光标所在行起向下一共n行 |
yy | 复制光标所在行(nyy复制光标下n行) |
p | 粘贴到光标下一行 |
P | 粘贴到光标上一行(小P) |
u | 撤销(50次) |
Ctrl+r | 反撤销 |
v | 按“v"后移动光标会选中制定字符,然后可以进行复制,粘贴等。 |
shift+v | 一行一行的选中 |
ctrl +v | 一块一块的选 之后安shift+i可以批量注释选中的行 |
注释所有行:ctrl+v j/k + shift+i (输入“#”)+esc
shift+3: 全文搜索当前光标所在的字段
编辑模式 | j |
---|---|
i | 进入编辑模式,在当前字符前插入 |
a | 在当前字符后插入 |
I | 在当前行行首插入 |
A | 在当前行行尾插入 |
o | 在当前行的下一行插入 |
O | 在当前行的上一行插入 |
进入编辑模式之后,在屏幕的最下一行会出现”insert或REPLACE“的字样。
从编辑模式回到一般模式按”ESC“即可
命令行模式 | 在一般模式输入":"或“/”即可进入命令模式 |
---|---|
/word | 向光标之后寻找一个字符串为word,按n向后继续搜索 |
?word | 向光标之前寻找一个字符串为word,按n向前继续搜索 |
“:/word”或“:?word” | 显示所有关键字 |
:n1,n2s/word1/word2/g | 在n1,n2行之间查找word1并替换成word2,不加g则只替换每行的第一个word1 |
:1,$s/word1/word2/g | 将文档中所有的word1替换为word2,不加g则只替换每行的第一个word1 |
:%s/word1/word2/g | 同上 |
:1,$s#/word1/123/1.txt#/word2/234/2.txt#g 可以用“#”将替换字符中的“/”替换掉
:w | 保存文本 |
---|---|
:q | 退出vim |
:w! | 强制保存,在root用户下即使文本只读也可以完成保存 |
:q! | 强制退出,所有改动不生效 |
:wq | 保存并退出 |
:12 | 跳到第12行 |
:set nu | 显示行号 |
:set nonu | 不显示行号 |
:nohl | 取消高亮 |
:set paste | 连格式一起复制 |
:set autoindent | 自动缩进 |
设置高亮:
syntax on
如果此时语法还是没有高亮显示,那么在/etc/profile文件中添加以下语句:
export TERM=xterm-colorhighlight Comment ctermfg=green guifg=green ###设置高亮
如果不小心输入错了命令,需要连续按两下ESC才可以取消刚刚敲的命令然后进入一般模式
在一般模式下,按q就进入 记录状态了 然后再按【:】或【esc】都不管用 ,需要取消记录状态 才可以进行其他操作
/etcvimrc:所有用户生效
语法:打包: tar -cvf test.tar test dir1 test2 dir2… (原文件还在)
-c:建立一个tar
-x:解压缩(源文件不会消失,且重名不会提示是否覆盖)
-f:指定目标文件名,参数放在最后
-z:同时用gzip压缩
-j:同时用bzip2压缩
-J:同时用xz压缩
-t:查看包里面的文件(名字)
-exclude filename:打包的时候排除某个文件
tar -xvf test.tar
tar -xvf -C /tmp/ test.tar 将test.tar解压到/tmp下。-C指定解包路径
tar -cvJf *.tar.xz 111 dir2 dir1 test
tar -xvJf ***.tar.xz来解压用xz压缩的文件
tar -tJf *.tar.xz 查看文件列表(特例)
tar -zcvf *.tar.gz 111 333 dir2
tar -zxvf *.tar.gz来解压用gzip压缩的文件
tar -jcvf *.tar.bz2 111 33 dir2
tar -jxvf *.tar.bz2 解压用bzip2压缩的文件
tar打包的同时过滤其中的某个文件
tar --exclude 12.txt -cvf 111.tar 111 (一个exclude过滤一个文件)
tar -zxvf test.tar.gz /test/1.sh.tar.gz
-d: 解压缩时使用
-#: 压缩等级, 1 压缩最差, 9压缩最好, 6 为默认
gzip filename 生成filename.gz
gzip -d filename.gz 解压缩
gunzip filename.gz 解压缩
可以用zcat filename.gz 来查看压缩之前的文件内容。
可以用[root@localhost ~]#du test.txt.gz 来查看压缩后的大小。
扩展:
-r就是把目录里面的所有文件挨个压缩一遍,
-c 可以不删除源文件直接压缩 ,需要用重定向 gzip -c 1.txt > 1.txt.gz
-z: 压缩 可以不加,生成filename.bz2
-d: 解压缩
也可以用bunzip2 filename.bz2解压缩。
用bzcat filename.bz2 查看压缩之前的文件内容。
-c 可以不删除源文件直接压缩 ,需要用重定向bzip2 -c 1.txt > 1.bz2
解压缩 unzip filename.zip/dir.zip (会提示是否覆盖文件)
-o 不提示的情况覆盖文件
-d unzip -d /home dir.zip (将dir.zip解压缩到/home下)
-v unzip -v filename.zip (查看压缩之前的文件,看不了内容)
语法:xz filename (生成filename.xz文件)
xz -d filename.xz (解压缩,也可以用unxz)
-k (可以在压缩和解压缩的时候不
如果有重名文件,会提示filen exists,并停止解压缩,使用 -f 可以直接覆盖掉重名文件,但是不会提示。
xzcat filename.xz 查看压缩文件内容)
xz -d 1.txt.xz -c > /tmp/1.txt (指定解压缩路径)
xz -V (–version,版本)
-rpm命令是RPM软件包的管理工具。是RED Hat linux发行版专门用来管理linux各项套件的程序遵循GPL规则且功能强大。
挂载光盘到/mnt下
[root@zll_master ~]# mount /dev/cdrom /mnt
rpm包就在该目录下的packages目录下
[root@zll_master ~]# ls /mnt/packages
[root@localhost mnt]# ls Packages/ |more
abrt-2.1.11-45.el7.centos.x86_64.rpm
abrt-addon-ccpp-2.1.11-45.el7.centos.x86_64.rpm
abrt-addon-kerneloops-2.1.11-45.el7.centos.x86_64.rpm
abrt-addon-pstoreoops-2.1.11-45.el7.centos.x86_64.rpm
abrt-addon-python-2.1.11-45.el7.centos.x86_64.rpm
abrt-addon-vmcore-2.1.11-45.el7.centos.x86_64.rpm
-i :安装
-U:升级
-v:可视化
-h:显示安装进度
-e:卸载
-q:查询一个包是否安装
-qi:查询指定包信息
-ql:列出一个包安装的文件
-qf:查询文件的绝对路径:常用举例:rpm -qf `which xz`
eq:
1. 安装:rpm -ivh rpm包文件
2. 升级:rpm -Uvh rpm包文件
3. 卸载:rpm -e 包名
4. 查询已经安装的包:rpm -qa
yum list 列出可用的yum包
[root@localhost mnt]# yum list
省略...
vala.i686 0.40.8-1.el7 base
vala.x86_64 0.40.8-1.el7 base
vala-devel.i686 0.40.8-1.el7 base
vala-devel.x86_64 0.40.8-1.el7 base
vala-doc.noarch 0.40.8-1.el7 base
valadoc.i686 0.40.8-1.el7 base
valadoc.x86_64 0.40.8-1.el7 base
···
带“@”的表示已经安装,base代表仓库名字,在yum的配置文件中定义:/etc/yum.repos.d/CentOS-Base.repo
vim dvd.repo,在里面输入
[dvd] //仓库名字
name=install dvd //描述
baseurl=file:///mnt //路径
ebable=1 //1可用,0不可用
bpcheck=0 //0不检测,1检测
1.删掉CentOS-Base.repo
rm -rf /etc/yum.repo.d/CentOS-Base.repo
2. 下载163源
curl -O http://mirrors.163.com/.help/CentOS7-Base-163.repo
1.安装扩展源epel
yum install -y epel-release
2.仅下载不安装
yumdownloader 包名
默认放在/var/cache/yum/x86_64/7/仓库名/Packages下
约定:源码包路径/usr/local/src
下载:wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.35.tar.gz
README为源码包的说明文档
INSTALL 安装文档
开始安装:
tar -zxvf httpd-2.4.35.tar.gz
cd httpd-2.4.35
./configure --prefix=/usr/local/apache2
执行完成之后,可以用echo $?查看上一天命令是否有报错,0为没有。