Linux常用命令
一、linux介绍与作用
linux 乌班图
linux CentOS
windows 2002 xp win7 win8 win10
windows 2003 server windows 2008
linux 特点
开源
安全
稳定
可靠
windows 2008
简单
易用
用户友好
http://www.netcraft.com 踩点技术
kali
二、 命令行提示符
a) [root@localhost ~]#
[当前登录用户@主机名 当前所在目录]$
linux 超级用户 :root
windows 超级用户: administrator
# 超级用户
$ 普通用户
当前所在目录 :~ 用户的家目录
管理员超级用户 /root
普通用户 /home/用户名/
b) linux 命令格式
命令 空格 [选项] 空格 [参数]
选项:使用与调整命令的功能
参数:参数是命令的操作对象 如果可以 省略 那就是有默认值的参数显示
注意: 在linux下是严格区分大小写的 所有内容都严格区分大小写
1. ls list 显示目录下内容
ls 直接回车 显示目录下的内容
ls -l 长格式显示 (缩略选项用一个减号,完整的选项用两个减号)
-rw-r--r--. 1 root root 7572 7月 25 22:42 install.log.syslog
第一列 权限
第二列 引用计数
第三列 所有者
第四列 所属组
第五列 大小 默认单位是Byte
第六列 文件最后一个修改和访问的时间
第七列 文件名
ls -lh -h 人性化显示 文件大小显示为M K G T
多个选项可以一起使用大部分没有任何顺序
ls -a 显示所有文件(包含隐藏文件)(文件名前面带点的都是隐藏文件)
目录操作命令
1.cd 切换所在目录
a) 命令名称:cd
b) cd /home
相对路径 参考当前所在目录 进行查询 如果使用相对路径 请查看好你所在目录是哪一个
绝对路径 从根目录(/)开始 一级一级的查找 知道找到为止
tab 键 可以对我们的目录和文件进行补全
cd 回到登录用户的家目录
cd - 进入上一次操作目录
cd .. 进入上一级目录
2. pwd 显示当前所在目录
3.Linux 常见目录
/ 根目录
/root 超级用户的家目录
/home 普通用户的家目录
/bin 命令保存目录 (普通用户的命令)
/sbin 命令保存目录 (超级用户的命令)
/boot 启动目录 启动相关文件内容
/dev 设备文件保存目录
/etc 配置文件保存目录
/lib 函数库的保存目录
/mnt 系统挂载目录
/media 挂载目录
/tmp 临时目录
/proc 直接写入内存
/usr 系统软件资源目录
/var 系统相关文档内容
/var/log/ 系统日志
4. 建立目录
蓝色名字的文件是目录
mkdir 目录名
mkdir biantaixiang
加上-p 就是递归创建
mkdir -p biantaixiang/weisuoxiang/shuaiqixiang/qizhixiang/
5.删除
rm -rf 文件/目录
-r 删除目录
-f 强制
快捷键:
清屏: ctrl + l
强制终止: ctrl + c
三、文件操作命令 增 删 改 查
1. 创建文件 新建文件
touch文件名
touch weisuoxiang.php
2. cat 文件名
-n 查看文件同时显示行号
3. more 文件名 分屏显示
空格向下翻页 b 向上翻页 q退出
4. head - 要查看的条数 文件名
四、文件和目录都能操作的命令
1. rm 删除
2. cp 复制
cp 源文件 目标位置
如果想要复制目录
cp -r /weisuolin /tmp/weisuolin 复制目录
-r 复制目录
3. mv 剪切或改名 不管剪切的是文件还是目录 都不需要加上-r选项
mv 源文件 目标位置
mv install.log install.log.bak 改名
mv install.log.bak weisuolin/install.log.bak 剪切
五、权限管理
1. 权限位
- rw- r-- r--.
权限位是十位
第一位 代表文件类型
- 普通文件
d 目录文件
l 链接文件
后面九位
所有者权限 u=user
所属组权限 g = group
其他人权限 o = other
r 读 4
w 写 2
x 执行 1
2. 修改权限
chmod
逻辑描述法:
chmod u+x 1.php
chmod u-x 1.php
chmod u=rwx 1.php
chmod g=rwx 1.php
数字描述法:
chmod 777 1.php
chmod 755 1.php
chmod 655 1.php
777 最大权限 在生产服务器中禁止使用
实验: 问: root用户创建一个目录(默认权限 rwxr-xr-x) 在目录中新建文件设为777 普通和用户是否能删除该文件
1. mkdir jomei
2. cd jomei
3. touch yuxuelin
4. chmod 777 yuxuelin
5. useradd 用户名 (添加用户)
6. passwd 用户名 (为用户添加密码)
使用普通用户去尝试删除 yuxuelin 文件 结果失败
原因: rwx 权限对于目录和文件实际意义是不一样的
文件
r: 查看文件内容
w: 修改文件内容
x: 执行
目录
r: 列出文件
w: 创建删除文件
x: 进入目录
总结:
1.对文件有写权限 只代表可以修改这个文件 要想删除文件 需要文件所在目录有写权限
2. 只要对目录有写权限 目录中的文件就算是root创建的文件也可以删除掉
赋予权限要合理
1.对目录w权限 就意味着需要有rwx
2. 对脚本执行 需要rx 并且对该目录有rx权限
六、帮助命令
1. man 命令名
man ls 空格向下翻页 b 向上翻页 q退出
2. 命令 -- help
七、查找命令
1. whereis 命令名 查找命令的命令 同时可以看到帮助文档的位置
2. find 搜索命令 在系统当中搜索符合条件的文件名
i. 按照文件名查找
find 查找位置 -name 文件名
find / -name “yuxuelin” 按照文件名查找 yuxuelin的文件(区分大小写)
find / -iname “yuxuelin” 按照文件名查找 yuxuelin文件(不区分大小写)
ii. 按文件大小查找
-size 按照文件大小 +50k 大于50k -50k 小于50k 50k 等于50k b k M G
find / -size +50k 查找根目录下 文件大小大于50k的文件、
iii. 按照文件类型查找
-type 类型 按照文件类型查找 f:文件 d:目录
find . -type d 查找当前目录 下面所有文件类型为目录的全部查询出来
iv. 在查询出来的结果中 直接进行命令操作
find . -name “yuxuelin” -exec rm -rf {} \;
3. grep “字符串” 文件名 在文档中搜索符合条件的内容
-v 反向选择
-i 忽略大小写
grep -i “root” /root/install.log.bak
grep -v “root” /root/install.log.bak
4. 管道符
命令1 | 命令2 命令1的执行结果,作为命令2的操作对象
ls -l /etc |more
ls -l /etc | grep yum
八、关机和重启命令
1. shutdown -h now 关机
a) shutdown -r now 重启
2. reboot 重启
注意: 如果是服务器请不要关机,如果你是虚拟机你自己开心就好
九、压缩和解压缩
windows 压缩类型: .rar .zip .rap .7z
linux 压缩类型 :.tar.gz .tar.bz2
1.压缩
tar -zcvf 压缩的文件名 源文件
-z 识别.gz格式
-c 压缩
-v 显示压缩过程
-f 执行压缩包名
压缩的选项不能改变顺序
tar -jcvf 压缩文件名 源文件
-j 识别 .bz2格式
tar -jcvf baolilin.tar.bz2 baolilin
2.解压缩
a . tar -zxvf baolilin.tar.gz
-x 解压缩
b. tar -jxvf baolilin.tar.bz2
-x 解压缩
3.指定路径解压缩
tar - jxvf baolilin.tar.bz -C /tmp
-C 指定路径
十、挂载命令(重点重点重点重点)
linux 所有存储设备都必须挂载才能使用(linux中的挂载点就是windows中的盘符) 挂载的前提光驱中有光盘
1. 放入光盘iso
2. 建立挂载点
mkdir /mnt/cdrom
3. mount 设备描述文件 挂载点(必须存在的目录而且他必须是空目录)
mount /dev/sr0 /mnt/cdrom
如果只出现这句话 说明你光盘挂载成功
mount: block device /dev/sr0 is write-protected, mounting read-only
光盘的卸载
umount /mnt/cdrom
报错:
umount: /mnt/cdrom: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
计算机想说: 大哥能不能行了 我不想自杀
重点: 退出你的当前挂载点的目录
十一、 网络命令
i. ifconfig 与windows里面的ipconfig -all 是一样的 显示网络信息
今天各位有一个任务 就是你们必须将我们的远程工具连接完成
ifconfig eth0 192.168.204.250 临时修改
ii. ping 测试网络连通性
ping ip
ping -c 次数 ip ping 多少次
iii. netstat 查看网络状态命令
- t 查看tcp端口
-u 查看udp端口
-l 监听
-n 显示ip 和端口号
-a 查看所有连接
netstat -talun | grep :80 查看80端口是被谁使用 apache
netstat -talun | grep :3306 查看3306端口使用情况 mysql
设置ip地址
第一种方式 setup 命令设置ip
第二种方式:
1. vim /etc/sysconfig/network-scripts/ifcfg-eth0进入之后将ONBOOT=no的值从no 改为yes
使用上面的方式的获取的ip是自动获取
2. a)service network restart 重启网卡
b)reboot 重启电脑
nat 不会占用真实的物理ip地址 (请使用)
桥接 会占用真是的物理ip地址
一、 vim 编辑器
vim 是全屏幕纯文字编辑器
1. vim 使用
怎么进入vim
vim 后面写上你的要操作的文件名
a. vim 模式
命令--->插入模式(输入模式) a 后插入模式(追加) i 前插入模式(插入) o 下插入模式 A 在本行末尾进行插入 I 在本行行首进行插入 O 上插入模式
插入--->命令模式 esc键
命令---编辑 : :w 保存 :wq 保存并退出 :q! 不保存退出 !强制
b.命令模式操作(linux是没有鼠标的,在vim中都是通过快捷键来进行操作,这些快捷键可以替代鼠标。)
1.光标操作
:n 移动到第n行
:set nu 显示行号
在命令模式下
h 左 j 下 k 上 l 右
gg 移动到文件头
G 移动到文件尾
2.删除整行、剪切
dd 删除单行
ndd 删除多行
p 粘贴
dG 从光标所在行删除到文件末尾
3. 复制
yy 复制单行
nyy 复制多行
p 粘贴
np 粘贴n行
4. 撤销回来
u 撤销 windows ctrl+z
ctrl +r反撤销 windows ctrl+y
注意 :如果你使用了内网通 飞秋 等一系列软件 请先关掉软件之后再使用ctrl+r 为什么 因为ctrl+r 在他们当中是快捷键
5. 显示行号
:set nu 显示行号
:set nonu 隐藏行号
6. 查找
/查找内容 向下查找
n 下一个
N 上一个
7. 替换
: 1,10s/old/new/g 替换1到10行的内容 所有old 替换成new
:%s/old/new/g 替换整个文件的所有old 替换成new
:1,10s/^/#/g 在前10行的前面加上#注释
:1,10s/^#//g 取消10行前面的注释#
二、 软件包管理
a) windows 和linux的软件是不通用的 windows的.exe 不能直接在linux下安装.
缺点: 所有软件都要在linux当中独立开发
优点: windows 的病毒和木马 都无法再Linux下安装
软件包选择原则
如果软件包安装之后 是给大量客户端提供访问 我们使用的都是(源码包)安装
如果软件包安装之后 是给本机或者少量客户端就使用建议使用(二进制包)安装
1.软件包分类
a) 源码包
i. 优点: 开源 自定义 本身编译 效率高
ii. 缺点: 编译时间长 一旦报错 不容易排除
b) 二进制包(rpm包)
i. 优点: 安装速度快 简易
ii. 缺点: 不开源 自定义性能差 软件依赖性高
A-------->B-------->C 树形依赖
A-------->B--------->C--------->A 环形依赖 库软件依赖
2.rpm安装
a) 手动rpm命令安装
1. 包命名
包名-版本号-发布次数-适合的linux-适合的硬件.rpm
包全名: 操作没有安装的软件包 使用我们包的包全名(就是有后缀名)
包名: 操作的已经安装的软件包 我们使用的包名(就是没有后缀名)
2. 依赖性
3. 安装
rpm -ivh 包全名 (绝对路径)
-i 安装
-v 显示详细信息
-h 显示进度
安装位置:默认位置
rpm包不建议指定安装位置:
1.系统习惯使用默认位置来查找rpm相关信息
2.rpm包是有对应的卸载命令 不用担心安装太凌乱导致无法卸载
4.升级
rpm -Uvh 包全名
-U 升级
5.卸载
rpm -e 包名
--nodeps 不检查依赖性
6.查看
i. 查询软件包是否安装
rpm -q 包名 ---- 查询包是否安装
rpm -qa | grep httpd -- 显示所有安装 查询httpd是否存在
-q query 查询
-a all 所有
ii. 查询软件包安装的位置
rpm -ql 包名 ---查询软件包中文件安装的位置
-l list 列表
iii. 查询系统文件属于哪个包
rpm -qf 系统文件名 --- 查看这个系统文件是哪个包的文件
-f file 文件
实验:安装httpd
准备工作: 挂载光盘
1.放入iso镜像文件
2.创建目录如果你已经有了就不用在创建
3.mount /dev/sr0 /mnt/cdrom
4.如果挂载成功之后进入挂载点目录 /mnt/cdrom/Packages/
E rpm -ivh httpd-2.2.15-53.el6.centos.i686.rpm
C rpm -ivh apr-util-ldap-1.3.9-3.el6_0.1.i686.rpm
B rpm -ivh apr-util-1.3.9-3.el6_0.1.i686.rpm
A rpm -ivh apr-1.3.9-5.el6_2.i686.rpm
D rpm -ivh httpd-tools-2.2.15-53.el6.centos.i686.rpm
6.启动httpd 服务
service httpd start
如果在浏览器上访问的时候比较慢 请查看你的防火墙是否关闭 如果没有关闭请关闭掉
b) yum rpm 命令安装 没有yum包 yum是rpm包的在线自动安装方式
yun -y install 包名
install 安装 -y 自动回答yes
yum -y remove 包名 卸载
yum -y update 包名 更新
yum list 查看所有可以安装的包
将光盘作为你的源地址 yum源(非常重要非常重要非常重要)
1. cd /etc/yum.repos.d/
2. mv CentOS-Base.repo CentOS-Base.repo.bak
#CentOS-Base.repo 网络源
#上面的操作的作用是让yum的网络源失效
3. mount /dev/sr0 /mnt/cdrom
#上面是挂载光盘
4. vim /etc/yum.repos.d/CentOS-Media.repo
[c6-media] yum源名称
name=CentOS-$releasever - Media yum源说明
baseurl=file:///mnt/cdrom/ 指定yum源地址
gpgcheck=1 yum源验证生效
enabled=1 yum文件生效
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
最后保存并退出 :wq
做一个实验用于测试yum源是否改变成功 yum -y install gcc (gcc 是C语言编译器 不装gcc 源码包无法安装)
一、linux介绍与作用
linux 乌班图
linux CentOS
windows 2002 xp win7 win8 win10
windows 2003 server windows 2008
linux 特点
开源
安全
稳定
可靠
windows 2008
简单
易用
用户友好
http://www.netcraft.com 踩点技术
kali
二、 命令行提示符
a) [root@localhost ~]#
[当前登录用户@主机名 当前所在目录]$
linux 超级用户 :root
windows 超级用户: administrator
# 超级用户
$ 普通用户
当前所在目录 :~ 用户的家目录
管理员超级用户 /root
普通用户 /home/用户名/
b) linux 命令格式
命令 空格 [选项] 空格 [参数]
选项:使用与调整命令的功能
参数:参数是命令的操作对象 如果可以 省略 那就是有默认值的参数显示
注意: 在linux下是严格区分大小写的 所有内容都严格区分大小写
1. ls list 显示目录下内容
ls 直接回车 显示目录下的内容
ls -l 长格式显示 (缩略选项用一个减号,完整的选项用两个减号)
-rw-r--r--. 1 root root 7572 7月 25 22:42 install.log.syslog
第一列 权限
第二列 引用计数
第三列 所有者
第四列 所属组
第五列 大小 默认单位是Byte
第六列 文件最后一个修改和访问的时间
第七列 文件名
ls -lh -h 人性化显示 文件大小显示为M K G T
多个选项可以一起使用大部分没有任何顺序
ls -a 显示所有文件(包含隐藏文件)(文件名前面带点的都是隐藏文件)
目录操作命令
1.cd 切换所在目录
a) 命令名称:cd
b) cd /home
相对路径 参考当前所在目录 进行查询 如果使用相对路径 请查看好你所在目录是哪一个
绝对路径 从根目录(/)开始 一级一级的查找 知道找到为止
tab 键 可以对我们的目录和文件进行补全
cd 回到登录用户的家目录
cd - 进入上一次操作目录
cd .. 进入上一级目录
2. pwd 显示当前所在目录
3.Linux 常见目录
/ 根目录
/root 超级用户的家目录
/home 普通用户的家目录
/bin 命令保存目录 (普通用户的命令)
/sbin 命令保存目录 (超级用户的命令)
/boot 启动目录 启动相关文件内容
/dev 设备文件保存目录
/etc 配置文件保存目录
/lib 函数库的保存目录
/mnt 系统挂载目录
/media 挂载目录
/tmp 临时目录
/proc 直接写入内存
/usr 系统软件资源目录
/var 系统相关文档内容
/var/log/ 系统日志
4. 建立目录
蓝色名字的文件是目录
mkdir 目录名
mkdir biantaixiang
加上-p 就是递归创建
mkdir -p biantaixiang/weisuoxiang/shuaiqixiang/qizhixiang/
5.删除
rm -rf 文件/目录
-r 删除目录
-f 强制
快捷键:
清屏: ctrl + l
强制终止: ctrl + c
三、文件操作命令 增 删 改 查
1. 创建文件 新建文件
touch文件名
touch weisuoxiang.php
2. cat 文件名
-n 查看文件同时显示行号
3. more 文件名 分屏显示
空格向下翻页 b 向上翻页 q退出
4. head - 要查看的条数 文件名
四、文件和目录都能操作的命令
1. rm 删除
2. cp 复制
cp 源文件 目标位置
如果想要复制目录
cp -r /weisuolin /tmp/weisuolin 复制目录
-r 复制目录
3. mv 剪切或改名 不管剪切的是文件还是目录 都不需要加上-r选项
mv 源文件 目标位置
mv install.log install.log.bak 改名
mv install.log.bak weisuolin/install.log.bak 剪切
五、权限管理
1. 权限位
- rw- r-- r--.
权限位是十位
第一位 代表文件类型
- 普通文件
d 目录文件
l 链接文件
后面九位
所有者权限 u=user
所属组权限 g = group
其他人权限 o = other
r 读 4
w 写 2
x 执行 1
2. 修改权限
chmod
逻辑描述法:
chmod u+x 1.php
chmod u-x 1.php
chmod u=rwx 1.php
chmod g=rwx 1.php
数字描述法:
chmod 777 1.php
chmod 755 1.php
chmod 655 1.php
777 最大权限 在生产服务器中禁止使用
实验: 问: root用户创建一个目录(默认权限 rwxr-xr-x) 在目录中新建文件设为777 普通和用户是否能删除该文件
1. mkdir jomei
2. cd jomei
3. touch yuxuelin
4. chmod 777 yuxuelin
5. useradd 用户名 (添加用户)
6. passwd 用户名 (为用户添加密码)
使用普通用户去尝试删除 yuxuelin 文件 结果失败
原因: rwx 权限对于目录和文件实际意义是不一样的
文件
r: 查看文件内容
w: 修改文件内容
x: 执行
目录
r: 列出文件
w: 创建删除文件
x: 进入目录
总结:
1.对文件有写权限 只代表可以修改这个文件 要想删除文件 需要文件所在目录有写权限
2. 只要对目录有写权限 目录中的文件就算是root创建的文件也可以删除掉
赋予权限要合理
1.对目录w权限 就意味着需要有rwx
2. 对脚本执行 需要rx 并且对该目录有rx权限
六、帮助命令
1. man 命令名
man ls 空格向下翻页 b 向上翻页 q退出
2. 命令 -- help
七、查找命令
1. whereis 命令名 查找命令的命令 同时可以看到帮助文档的位置
2. find 搜索命令 在系统当中搜索符合条件的文件名
i. 按照文件名查找
find 查找位置 -name 文件名
find / -name “yuxuelin” 按照文件名查找 yuxuelin的文件(区分大小写)
find / -iname “yuxuelin” 按照文件名查找 yuxuelin文件(不区分大小写)
ii. 按文件大小查找
-size 按照文件大小 +50k 大于50k -50k 小于50k 50k 等于50k b k M G
find / -size +50k 查找根目录下 文件大小大于50k的文件、
iii. 按照文件类型查找
-type 类型 按照文件类型查找 f:文件 d:目录
find . -type d 查找当前目录 下面所有文件类型为目录的全部查询出来
iv. 在查询出来的结果中 直接进行命令操作
find . -name “yuxuelin” -exec rm -rf {} \;
3. grep “字符串” 文件名 在文档中搜索符合条件的内容
-v 反向选择
-i 忽略大小写
grep -i “root” /root/install.log.bak
grep -v “root” /root/install.log.bak
4. 管道符
命令1 | 命令2 命令1的执行结果,作为命令2的操作对象
ls -l /etc |more
ls -l /etc | grep yum
八、关机和重启命令
1. shutdown -h now 关机
a) shutdown -r now 重启
2. reboot 重启
注意: 如果是服务器请不要关机,如果你是虚拟机你自己开心就好
九、压缩和解压缩
windows 压缩类型: .rar .zip .rap .7z
linux 压缩类型 :.tar.gz .tar.bz2
1.压缩
tar -zcvf 压缩的文件名 源文件
-z 识别.gz格式
-c 压缩
-v 显示压缩过程
-f 执行压缩包名
压缩的选项不能改变顺序
tar -jcvf 压缩文件名 源文件
-j 识别 .bz2格式
tar -jcvf baolilin.tar.bz2 baolilin
2.解压缩
a . tar -zxvf baolilin.tar.gz
-x 解压缩
b. tar -jxvf baolilin.tar.bz2
-x 解压缩
3.指定路径解压缩
tar - jxvf baolilin.tar.bz -C /tmp
-C 指定路径
十、挂载命令(重点重点重点重点)
linux 所有存储设备都必须挂载才能使用(linux中的挂载点就是windows中的盘符) 挂载的前提光驱中有光盘
1. 放入光盘iso
2. 建立挂载点
mkdir /mnt/cdrom
3. mount 设备描述文件 挂载点(必须存在的目录而且他必须是空目录)
mount /dev/sr0 /mnt/cdrom
如果只出现这句话 说明你光盘挂载成功
mount: block device /dev/sr0 is write-protected, mounting read-only
光盘的卸载
umount /mnt/cdrom
报错:
umount: /mnt/cdrom: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
计算机想说: 大哥能不能行了 我不想自杀
重点: 退出你的当前挂载点的目录
十一、 网络命令
i. ifconfig 与windows里面的ipconfig -all 是一样的 显示网络信息
今天各位有一个任务 就是你们必须将我们的远程工具连接完成
ifconfig eth0 192.168.204.250 临时修改
ii. ping 测试网络连通性
ping ip
ping -c 次数 ip ping 多少次
iii. netstat 查看网络状态命令
- t 查看tcp端口
-u 查看udp端口
-l 监听
-n 显示ip 和端口号
-a 查看所有连接
netstat -talun | grep :80 查看80端口是被谁使用 apache
netstat -talun | grep :3306 查看3306端口使用情况 mysql
设置ip地址
第一种方式 setup 命令设置ip
第二种方式:
1. vim /etc/sysconfig/network-scripts/ifcfg-eth0进入之后将ONBOOT=no的值从no 改为yes
使用上面的方式的获取的ip是自动获取
2. a)service network restart 重启网卡
b)reboot 重启电脑
nat 不会占用真实的物理ip地址 (请使用)
桥接 会占用真是的物理ip地址
一、 vim 编辑器
vim 是全屏幕纯文字编辑器
1. vim 使用
怎么进入vim
vim 后面写上你的要操作的文件名
a. vim 模式
命令--->插入模式(输入模式) a 后插入模式(追加) i 前插入模式(插入) o 下插入模式 A 在本行末尾进行插入 I 在本行行首进行插入 O 上插入模式
插入--->命令模式 esc键
命令---编辑 : :w 保存 :wq 保存并退出 :q! 不保存退出 !强制
b.命令模式操作(linux是没有鼠标的,在vim中都是通过快捷键来进行操作,这些快捷键可以替代鼠标。)
1.光标操作
:n 移动到第n行
:set nu 显示行号
在命令模式下
h 左 j 下 k 上 l 右
gg 移动到文件头
G 移动到文件尾
2.删除整行、剪切
dd 删除单行
ndd 删除多行
p 粘贴
dG 从光标所在行删除到文件末尾
3. 复制
yy 复制单行
nyy 复制多行
p 粘贴
np 粘贴n行
4. 撤销回来
u 撤销 windows ctrl+z
ctrl +r反撤销 windows ctrl+y
注意 :如果你使用了内网通 飞秋 等一系列软件 请先关掉软件之后再使用ctrl+r 为什么 因为ctrl+r 在他们当中是快捷键
5. 显示行号
:set nu 显示行号
:set nonu 隐藏行号
6. 查找
/查找内容 向下查找
n 下一个
N 上一个
7. 替换
: 1,10s/old/new/g 替换1到10行的内容 所有old 替换成new
:%s/old/new/g 替换整个文件的所有old 替换成new
:1,10s/^/#/g 在前10行的前面加上#注释
:1,10s/^#//g 取消10行前面的注释#
二、 软件包管理
a) windows 和linux的软件是不通用的 windows的.exe 不能直接在linux下安装.
缺点: 所有软件都要在linux当中独立开发
优点: windows 的病毒和木马 都无法再Linux下安装
软件包选择原则
如果软件包安装之后 是给大量客户端提供访问 我们使用的都是(源码包)安装
如果软件包安装之后 是给本机或者少量客户端就使用建议使用(二进制包)安装
1.软件包分类
a) 源码包
i. 优点: 开源 自定义 本身编译 效率高
ii. 缺点: 编译时间长 一旦报错 不容易排除
b) 二进制包(rpm包)
i. 优点: 安装速度快 简易
ii. 缺点: 不开源 自定义性能差 软件依赖性高
A-------->B-------->C 树形依赖
A-------->B--------->C--------->A 环形依赖 库软件依赖
2.rpm安装
a) 手动rpm命令安装
1. 包命名
包名-版本号-发布次数-适合的linux-适合的硬件.rpm
包全名: 操作没有安装的软件包 使用我们包的包全名(就是有后缀名)
包名: 操作的已经安装的软件包 我们使用的包名(就是没有后缀名)
2. 依赖性
3. 安装
rpm -ivh 包全名 (绝对路径)
-i 安装
-v 显示详细信息
-h 显示进度
安装位置:默认位置
rpm包不建议指定安装位置:
1.系统习惯使用默认位置来查找rpm相关信息
2.rpm包是有对应的卸载命令 不用担心安装太凌乱导致无法卸载
4.升级
rpm -Uvh 包全名
-U 升级
5.卸载
rpm -e 包名
--nodeps 不检查依赖性
6.查看
i. 查询软件包是否安装
rpm -q 包名 ---- 查询包是否安装
rpm -qa | grep httpd -- 显示所有安装 查询httpd是否存在
-q query 查询
-a all 所有
ii. 查询软件包安装的位置
rpm -ql 包名 ---查询软件包中文件安装的位置
-l list 列表
iii. 查询系统文件属于哪个包
rpm -qf 系统文件名 --- 查看这个系统文件是哪个包的文件
-f file 文件
实验:安装httpd
准备工作: 挂载光盘
1.放入iso镜像文件
2.创建目录如果你已经有了就不用在创建
3.mount /dev/sr0 /mnt/cdrom
4.如果挂载成功之后进入挂载点目录 /mnt/cdrom/Packages/
E rpm -ivh httpd-2.2.15-53.el6.centos.i686.rpm
C rpm -ivh apr-util-ldap-1.3.9-3.el6_0.1.i686.rpm
B rpm -ivh apr-util-1.3.9-3.el6_0.1.i686.rpm
A rpm -ivh apr-1.3.9-5.el6_2.i686.rpm
D rpm -ivh httpd-tools-2.2.15-53.el6.centos.i686.rpm
6.启动httpd 服务
service httpd start
如果在浏览器上访问的时候比较慢 请查看你的防火墙是否关闭 如果没有关闭请关闭掉
b) yum rpm 命令安装 没有yum包 yum是rpm包的在线自动安装方式
yun -y install 包名
install 安装 -y 自动回答yes
yum -y remove 包名 卸载
yum -y update 包名 更新
yum list 查看所有可以安装的包
将光盘作为你的源地址 yum源(非常重要非常重要非常重要)
1. cd /etc/yum.repos.d/
2. mv CentOS-Base.repo CentOS-Base.repo.bak
#CentOS-Base.repo 网络源
#上面的操作的作用是让yum的网络源失效
3. mount /dev/sr0 /mnt/cdrom
#上面是挂载光盘
4. vim /etc/yum.repos.d/CentOS-Media.repo
[c6-media] yum源名称
name=CentOS-$releasever - Media yum源说明
baseurl=file:///mnt/cdrom/ 指定yum源地址
gpgcheck=1 yum源验证生效
enabled=1 yum文件生效
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
最后保存并退出 :wq
做一个实验用于测试yum源是否改变成功 yum -y install gcc (gcc 是C语言编译器 不装gcc 源码包无法安装)