Linux命令
一、VI/VIM编辑器
1、一般模式
语法 功能描述 yy 复制光标当前一行 y数字y 复制一段(从第几行到第几行) p 箭头移动到目的行粘贴 u 撤销上一步 dd 删除光标当前行 d数字d 删除光标(含)后多少行 x 删除一个字母,相当于del X 删除一个字母,相当于Backspace yw 复制一个词 dw 删除一个词 shift+^ 移动到行头 shift+$ 移动到行尾 1+shift+g 移动到页头,数字 shift+g 移动到页尾 数字N+shift+g 移动到目标行
2、编辑模式
(按下『i, I, o, O, a, A』等任何一个字母之后才会进入编辑模式)
按键 功能 i 当前光标前 a 当前光标后 o 当前光标行的下一行 I 光标所在行最前 A 光标所在行最后 O 当前光标行的上一行
3、指令模式
(输入『 : / ?』3个中的任何一个按钮,就可以将光标移动到最底下那一行)
命令 功能 :w 保存 :q 退出 :! 强制执行 /要查找的词 n 查找下一个,N 往上查找 ? 要查找的词 n是查找上一个,shift+n是往下查找 :set nu 显示行号 :set nonu 关闭行号 :%s/old/new/g 替换内容
二、系统相关命令
ifconfig
ping 目的主机
hostname
service network status
service network stop
chkconfig
chkconfig iptables off
chkconfig iptables on
systemctl status firewalld
systemctl stop firewalld
systemctl start firewalld
systemctl restart firewalld
systemctl list-unit-files
systemctl disable firewalld.service
systemctl enable firewalld.service
sync
halt
reboot
shutdown -h now
shutdown -r now
shutdown -h 1
‘This server will shutdown after 1 mins’
三、常用基本命令
1、帮助命令
1)man 获得帮助信息
man ls
信息 功能 NAME 命令的名称和单行描述 SYNOPSIS 怎样使用命令 DESCRIPTION 命令功能的深入讨论 EXAMPLES 怎样使用命令的例子 SEE ALSO 相关主题(通常是手册页)
2) help 获得shell内置命令的帮助信息
help cd
3)常用快捷键
常用快捷键 功能 ctrl + c 停止进程 ctrl+l 清屏;彻底清屏是:reset ctrl + q 退出 善于用tab键 提示(更重要的是可以防止敲错) 上下键 查找执行过的命令 ctrl +alt linux和Windows之间切换
2、文件目录类
1)pwd 显示当前工作目录的绝对路径
pwd
2)ls 列出目录的内容
# ls [选项] [目录或是文件]
ls -al
选项 功能 -a 全部的文件,连同隐藏档( 开头为 . 的文件) 一起列出来(常用) -l 长数据串列出,包含文件的属性与权限等等数据;(常用)
3)cd 切换目录
# cd [参数]
参数 功能 cd 绝对路径 切换路径 cd相对路径 切换路径 cd ~或者cd 回到自己的家目录 cd - 回到上一次所在目录 cd … 回到当前目录的上一级目录 cd -P 跳转到实际物理路径,而非快捷方式路径
4)mkdir 创建一个新的目录
mkdir -p xiyou/dssz/meihouwang
5)rmdir 删除一个空的目录
rmdir 要删除的空目录
rmdir xiyou/dssz/meihouwang
6)touch 创建空文件
touch xiyou/dssz/sunwukong.txt
7)cp 复制文件或目录
cp xiyou/dssz/suwukong.txt xiyou/mingjie/
cp -r xiyou/dssz/ ./
8)rm 删除文件或目录
# rm [选项] deleteFile (功能描述:递归删除目录中所有内容)
rm xiyou/mingjie/sunwukong.txt # 删除目录中的内容
rm -rf dssz/ # 递归删除目录中所有内容
选项 功能 -r 递归删除目录中所有内容 -f 强制执行删除操作,而不提示用于进行确认。 -v 显示指令的详细执行过程
9)mv 移动文件与目录或重命名
mv xiyou/dssz/suwukong.txt xiyou/dssz/houge.txt
mv xiyou/dssz/houge.txt ./
10)cat 查看文件内容
cat -n houge.txt
11)more 文件内容分屏查看器
more smartd.conf
操作 功能说明 空白键 (space) 代表向下翻一页; Enter 代表向下翻『一行』; q 代表立刻离开 more ,不再显示该文件内容。 Ctrl+F 向下滚动一屏 Ctrl+B 返回上一屏 = 输出当前行的行号 :f 输出文件名和当前行的行号
12)less 文件内容分屏查看器
less smartd.conf
操作 功能说明 空白键 向下翻动一页; [pagedown] 向下翻动一页 [pageup] 向上翻动一页; /字串 向下搜寻『字串』的功能;n:向下查找;N:向上查找; ?字串 向上搜寻『字串』的功能;n:向上查找;N:向下查找; q 离开 less 这个程序;
13)echo 输出内容到控制台
echo "hello\tworld"
echo -e "hello\tworld"
控制字符 作用 \ 输出\本身 \n 换行符 \t 制表符,也就是Tab键
14)head 显示文件头部内容
head -n 2 smartd.conf
15)tail 输出文件尾部内容
tail -n 1 smartd.conf
tail -f houge.txt
选项 功能 -n<行数> 输出文件尾部n行内容 -f 显示文件最新追加的内容,监视文件变化
16)> 输出重定向和 >> 追加
ls -l> houge.txt
ls -l>> houge.txt
echo hello>> houge.txt
17)ln 软链接
ln -s xiyou/dssz/houge.txt ./houzi
rm -rf houzi
ln -s xiyou/dssz/ ./dssz
cd -P dssz/
18)history 查看已经执行过历史命令
3、时间日期类
选项 功能 -d<时间字符串> 显示指定的“时间字符串”表示的时间,而非当前时间 -s<日期时间> 设置系统日期时间
参数 功能 <+日期时间格式> 指定显示时使用的日期时间格式
1)date 显示当前时间
date
date +%Y
date +%m
date +%d
date "+%Y-%m-%d %H:%M:%S"
2) date 显示非当前时间
date -d '1 days ago'
date -d '-1 days ago'
3 )date 设置系统时间
date -s 字符串时间
date -s "2017-06-19 20:52:18"
4) cal 查看日历
cal 2017
4、用户管理命令
1)useradd 添加新用户
useradd tangseng
2)passwd 设置用户密码
passwd tangseng
3)id 查看用户是否存在
# id 用户名
id tangseng
4)cat /etc/passwd 查看创建了哪些用户
cat /etc/passwd
5)su 切换用户
su tangseng
su - tangseng
6)userdel 删除用户
userdel tangseng
userdel -r zhubajie
选项 功能 -r 删除用户的同时,删除与用户相关的所有文件。
7)who 查看登录用户信息
whoami
who am i
8)sudo 设置普通用户具有root权限
root ALL= ( ALL) ALL
atguigu ALL= ( ALL) ALL
root ALL= ( ALL) ALL
atguigu ALL= ( ALL) NOPASSWD:ALL
9)usermod 修改用户
usermod -g root zhubajie
选项 功能 -g 修改用户的初始登录组,给定的组必须存在。默认组id是1。
5、用户组管理命令
1)groupadd 新增组
groupadd xitianqujing
2)groupdel 删除组
groupdel xitianqujing
3)groupmod 修改组
# groupmod -n 新组名 老组名
groupmod -n xitian xitianqujing
4)cat /etc/group 查看创建了哪些组
6、文件权限类
1)文件属性
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rhq9lTEU-1598075437806)(C:\Users\HIDE\AppData\Roaming\Typora\typora-user-images\image-20200623091146886.png)]
2)chmod 改变权限
chmod [ { ugoa} { +-= } { rwx} ] 文件或目录
chmod u+x houge.txt
chmod g+x houge.txt
chmod u-x,o+x houge.txt
chmod [ mode= 421 ] [ 文件或目录]
chmod 777 houge.txt
chmod -R 777 xiyou/
3)chown 改变所有者
chown [ 选项] [ 最终用户] [ 文件或目录] (功能描述:改变文件或者目录的所有者)
chown atguigu houge.txt
chown -R atguigu:atguigu xiyou/
4)chgrp 改变所属组
chgrp [ 最终用户组] [ 文件或目录] (功能描述:改变文件或者目录的所属组)
chgrp root houge.txt
6、搜索查找类
1)find 查找文件或者目录
find [ 搜索范围] [ 选项]
find xiyou/ -name *.txt
find xiyou/ -user atguigu
find /home -size +204800
选项 功能 -name<查询方式> 按照指定的文件名查找模式查找文件 -user<用户名> 查找属于指定用户名所有文件 -size<文件大小> 按照指定的文件大小查找文件,单位为: b —— 块(512字节) c —— 字节 w —— 字(2字节) k —— 千字节 M —— 兆字节 G —— 吉字节
2)locate快速定位文件路径
locate 搜索文件
3)grep 过滤查找及“|”管道符
grep 选项 查找内容 源文件
ls | grep -n test
8、压缩和解压类
1)gzip/gunzip 压缩
gzip 文件
gzip houge.txt
gunzip 文件.gz
gunzip houge.txt.gz
2)zip/unzip 压缩
zip [ 选项] XXX.zip 将要压缩的内容
zip mypackage.zip houge.txt bailongma.txt
unzip [ 选项] XXX.zip
unzip mypackage.zip
unzip houma.zip -d /opt
unzip选项 功能 -d<目录> 指定解压后文件的存放目录
3)tar 打包
tar [ 选项] XXX.tar.gz 将要打包进去的内容
tar -zcvf houma.tar.gz houge.txt bailongma.txt bailongma.txt houge.txt bailongma.txt
tar -zcvf xiyou.tar.gz xiyou/ xiyou/ xiyou/mingjie/ xiyou/dssz/ xiyou/dssz/houge.txt
tar -zxvf houma.tar.gz
tar -zxvf xiyou.tar.gz -C /opt
9、磁盘分区类
1)df 查看磁盘空间使用情况
df 选项 (功能描述:列出文件系统的整体磁盘使用量,检查文件系统的磁盘空间占用情况)
选项 功能 -h 以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
2)fdisk 查看分区
fdisk -l (功能描述:查看磁盘分区详情)
3)lsblk 查看设备挂载情况
lsblk (功能描述:查看设备挂载情况)
选项 功能 -f 查看详细的设备挂载情况,显示文件系统信息
4)mount/umount 挂载/卸载
mount [ -t vfstype] [ -o options] device dir (功能描述:挂载设备)
umount 设备文件名或挂载点 (功能描述:卸载设备)
mkdir /mnt/cdrom/
mount -t iso9660 /dev/cdrom /mnt/cdrom/
umount /mnt/cdrom
vi /etc/fstab
/dev/cdrom /mnt/cdrom iso9660 defaults 0 0
参数 功能 -t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有: 光盘或光盘镜像:iso9660 DOS fat16文件系统:msdos Windows 9x fat32文件系统:vfat Windows NT ntfs文件系统:ntfs Mount Windows文件网络 共享:smbfs UNIX (LINUX) 文件网络共享:nfs -o options 主要用来描述设备或档案的挂接方式。常用的参数有: loop:用来把一个文件当成硬盘分区挂接上系统 ro:采用只读方式挂接设备 rw:采用读写方式挂接设备 iocharset:指定访问文件系统所用字符集 device 要挂接(mount)的设备 dir 设备在系统上的挂接点(mount point)
10、进程线程类
1)ps 查看当前系统进程状态
ps -aux | grep xxx
ps -ef | grep xxx
选项 功能 -a 选择所有进程 -u 显示所有用户的所有进程 -x 显示没有终端的进程
2)kill 终止进程
kill [ 选项] 进程号 (功能描述:通过进程号杀死进程)
kill -9 5102
killall 进程名称 (功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)
killall firefox
3)pstree 查看进程树
pstree [ 选项]
pstree -p
pstree -u
选项 功能 -p 显示进程的PID -u 显示进程的所属用户
4)top 查看系统健康状态
top [ 选项]
top -d 1
top -i
top -p 2575
选项 功能 -d 秒数 指定top命令每隔几秒更新。默认是3秒在top命令的交互模式当中可以执行的命令: -i 使top不显示任何闲置或者僵死进程。 -p 通过指定监控进程ID来仅仅监控某个进程的状态。
操作 功能 P 以CPU使用率排序,默认就是此项 M 以内存的使用率排序 N 以PID排序 q 退出top
5)netstat 显示网络统计信息和端口占用情况
netstat -anp | grep 进程号 (功能描述:查看该进程网络信息)
netstat -anp | grep 火狐浏览器进程号
netstat -nlp | grep 端口号 (功能描述:查看网络端口号占用情况)
netstat -nlp | grep 20670
选项 功能 -n 拒绝显示别名,能显示数字的全部转化成数字 -l 仅列出有在listen(监听)的服务状态 -p 表示显示哪个进程在调用
11、crontab 系统定时任务
1)crontab 服务管理
service crond restart
2) crontab 定时任务设置
crontab [ 选项]
选项 功能 -e 编辑crontab定时任务 -l 查询crontab任务 -r 删除当前用户所有的crontab任务
项目 含义 范围 第一个“*” 一小时当中的第几分钟 0-59 第二个“*” 一天当中的第几小时 0-23 第三个“*” 一个月当中的第几天 1-31 第四个“*” 一年当中的第几月 1-12 第五个“*” 一周当中的星期几 0-7(0和7都代表星期日)
特殊符号 含义 * 代表任何时间。比如第一个“*”就代表一小时中每分钟都执行一次的意思。 , 代表不连续的时间。比如“0 8,12,16 * * * 命令”,就代表在每天的8点0分,12点0分,16点0分都执行一次命令 - 代表连续的时间范围。比如“0 5 * * 1-6命令”,代表在周一到周六的凌晨5点0分执行命令 */n 代表每隔多久执行一次。比如“*/10 * * * * 命令”,代表每隔10分钟就执行一遍命令
四、软件包管理
1、RPM
2)RPM查询命令(rpm -qa)
rpm -qa (功能描述:查询所安装的所有rpm软件包)
rpm -qa | grep firefox
3)RPM卸载命令(rpm -e)
rpm -e RPM软件包
rpm -e --nodeps 软件包
rpm -e firefox
选项 功能 -e 卸载软件包 –nodeps 卸载软件时,不检查依赖。这样的话,那些使用该软件包的软件在此之后可能就不能正常工作了。
4)RPM安装命令(rpm -ivh)
rpm -ivh RPM包全名
rpm -ivh firefox-45.0.1-1.el6.centos.x86_64.rpm
选项 功能 -i -i=install,安装 -v -v=verbose,显示详细信息 -h -h=hash,进度条 –nodeps –nodeps,不检测依赖进度
2、YUM
yum [ 选项] [ 参数]
yum -y install firefox.x86_64
参数 功能 install 安装rpm软件包 update 更新rpm软件包 check-update 检查是否有可用的更新rpm软件包 remove 删除指定的rpm软件包 list 显示软件包信息 clean 清理yum过期的缓存 deplist 显示yum软件包的所有依赖关系
了。 |
4)RPM安装命令(rpm -ivh)
rpm -ivh RPM包全名
rpm -ivh firefox-45.0.1-1.el6.centos.x86_64.rpm
选项 功能 -i -i=install,安装 -v -v=verbose,显示详细信息 -h -h=hash,进度条 –nodeps –nodeps,不检测依赖进度
2、YUM
yum [ 选项] [ 参数]
yum -y install firefox.x86_64
参数 功能 install 安装rpm软件包 update 更新rpm软件包 check-update 检查是否有可用的更新rpm软件包 remove 删除指定的rpm软件包 list 显示软件包信息 clean 清理yum过期的缓存 deplist 显示yum软件包的所有依赖关系