前提
由于经常忘记命令,所以就想着自己整理一份,以便日后方便查看。本文会陆续更新,更新顺便不按任何顺序,都是使用到啥就记录啥。
常用命令
系统操作
命令 | 说明 |
---|---|
reboot | 重启 |
halt | 立刻关机 |
poweroff | 立刻关机 |
shutdown -r now | 立刻重启(root用户使用) |
shutdown -r 10 | 过10分钟自动重启(root用户使用) |
shutdown -r 20:35 | 在时间为20:35时候重启(root用户使用) |
ip addr | ip查询 |
ifconfig | ip信息 |
systemctl start firewalld | 打开防火墙 |
systemctl stop firewalld | 关闭防火墙 |
systemctl status firewalld | 查看防火墙状态 |
firewall-cmd —add-port=123/tcp —permanent | 添加指定需要开放的端口 |
firewall-cmd —reload | 重载入添加的端口 |
firewall-cmd —query-port=123/tcp | 查看想开的端口是否已开 |
netstat -lnp|grep 123 | 查看端口占用情况 |
kill 123 | 关闭端口,-9 强制关闭 |
文件与目录操作
命令 | 说明 |
---|---|
cd | 进入目录 |
ls | 查看目录下的文件 |
ls -a | 显示隐藏文件 |
ls -l | 显示详细信息 |
pwd | 显示工作路径 |
mkdir | 创建目录 |
mv | 移动/重命名一个目录/文件 |
cp | 复制一个目录/文件 |
rm | 删除目录/文件 |
rm -rf | 删除目录及其子目录内容 |
cat | 查看文件内容 |
head -2 | 查看一个文件的前两行 |
more | 查看一个长文件的内容 |
tac | 从最后一行开始反向查看一个文件的内容 |
tail -3 | 查看一个文件的最后三行 |
vi/vim | 编辑文件,i-进入编辑,Esc-退出编辑,:w-保存,:wq-退出并保存,:q!-退出保存 |
开发者必备Linux常用命令,掌握这些命令绝对够了,基于CenterOS7.6。
系统服务管理
systemctl
输出系统中各个服务的状态:
systemctl list-units --type=service复制代码
查看服务的运行状态:
systemctl status firewalld复制代码
关闭服务:
systemctl stop firewalld复制代码
启动服务:
systemctl start firewalld复制代码
重新启动服务(不管当前服务是启动还是关闭):
systemctl restart firewalld复制代码
重新载入配置信息而不中断服务:
systemctl reload firewalld复制代码
禁止服务开机自启动:
systemctl disable firewalld复制代码
设置服务开机自启动:
systemctl enable firewalld复制代码
文件管理
ls
列出当前目录(/)下的所有文件:
ls -l /复制代码
pwd
cd
改变当前工作目录:
cd /usr/local复制代码
date
显示或修改系统时间与日期;
date '+%Y-%m-%d %H:%M:%S'复制代码
passwd
用于设置用户密码:
passwd root复制代码
su
改变用户身份(切换到超级用户):
su -复制代码
clear
man
显示指定命令的帮助信息:
man ls复制代码
who
查询系统处于什么运行级别:
who -r复制代码
显示目前登录到系统的用户:
who -buT复制代码
free
显示系统内存状态(单位MB):
free -m复制代码
ps
显示系统进程运行动态:
ps -ef复制代码
查看sshd进程的运行动态:
ps -ef | grep sshd复制代码
top
mkdir
more
用于文件过长时分页查看文件内容 每页10行查看boot.log文件
more -c -10 /var/log/boot.log复制代码
cat
查看Linux启动日志文件文件,并标明行号:
cat -Ab /var/log/boot.log复制代码
touch
创建text.txt文件:
touch text.txt复制代码
rm
删除文件:
rm text.txt复制代码
强制删除某个目录及其子目录:
rm -rf testdir/复制代码
cp
将test1目录复制到test2目录
cp -r /mydata/tes1 /mydata/test2复制代码
mv
移动或覆盖文件:
mv text.txt text2.txt复制代码
压缩与解压
tar
将/etc文件夹中的文件归档到文件etc.tar(并不会进行压缩):
tar -cvf /mydata/etc.tar /etc复制代码
用gzip压缩文件夹/etc中的文件到文件etc.tar.gz:
tar -zcvf /mydata/etc.tar.gz /etc复制代码
用bzip2压缩文件夹/etc到文件/etc.tar.bz2:
tar -jcvf /mydata/etc.tar.bz2 /etc复制代码
分页查看压缩包中内容(gzip):
tar -ztvf /mydata/etc.tar.gz |more -c -10复制代码
解压文件到当前目录(gzip):
tar -zxvf /mydata/etc.tar.gz复制代码
磁盘和网络管理
df
查看磁盘空间占用情况:
df -hT复制代码
dh
查看当前目录下的文件及文件夹所占大小:
du -h --max-depth=1 ./*复制代码
ifconfig
netstat
查看当前路由信息:
netstat -rn复制代码
查看所有有效TCP连接:
netstat -an复制代码
查看系统中启动的监听服务:
netstat -tulnp复制代码
查看处于连接状态的系统资源信息:
netstat -atunp复制代码
wget
软件的安装与管理
rpm
安装软件包:rpm -ivh nginx-1.12.2-2.el7.x86_64.rpm
- 模糊搜索软件包:rpm -qa | grep nginx
- 精确查找软件包:rpm -qa nginx
- 查询软件包的安装路径:rpm -ql nginx-1.12.2-2.el7.x86_64
- 查看软件包的概要信息:rpm -qi nginx-1.12.2-2.el7.x86_64
- 验证软件包内容和安装文件是否一致:rpm -V nginx-1.12.2-2.el7.x86_64
- 更新软件包:rpm -Uvh nginx-1.12.2-2.el7.x86_64
删除软件包:rpm -e nginx-1.12.2-2.el7.x86_64
yum
安装软件包: yum install nginx
- 检查可以更新的软件包:yum check-update
- 更新指定的软件包:yum update nginx
- 在资源库中查找软件包信息:yum info nginx*
- 列出已经安装的所有软件包:yum info installed
- 列出软件包名称:yum list nginx*
- 模糊搜索软件包:yum search nginx
- 升级系统:yum update