Java程序员必会常用Linux速查手册
目錄
- 系统服务管理
- 文件管理
- 查看日志
- 压缩与解压
- 磁盘和网络管理
- 防火墙
- ftp操作
- 软件的安装与管理
- 其他
系统服务管理
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
文件管理
查找文件
(根据名称查找/目录下的filename.txt文件)
find / -name filename.txt
查看文件,包含隐藏文件
ls -al
列出当前目录(/)下的所有文件:
ls
ls -l /
获取目前所在工作目录的绝对路径
pwd
改变当前工作目录:cd
cd /usr/local
显示或修改系统时间与日期;date
date '+%y-%m-%d %h:%m:%s'
用于设置用户密码:passwd
passwd root
改变用户身份(切换到超级用户):su
su -username
用于清除屏幕信息
clear
显示指定命令的帮助信息:man
man ls
查询系统处于什么运行级别:who
who -r
显示目前登录到系统的用户:
who -but
显示系统内存状态(单位mb):free
free -m
显示系统进程运行动态:ps
ps -ef
查看sshd进程的运行动态:
ps -ef | grep sshd
查看即时活跃的进程,类似windows的任务管理器
top
创建目录
mkdir
复制文件包括其子文件到自定目录
cp -r sourcefolder targetfolder
删除目录(此目录是空目录)
rmdir deleteemptyfolder
删除文件包括其子文件
rm -rf deletefile
删除文件:rm
rm text.txt
移动文件
mv /temp/movefile /targetfolder
移动或覆盖文件:mv
mv oldnamefile.md newnamefile.md
修改文件权限(file.java的权限-rwxrwxrwx,r表示读、w表示写、x表示可执行)
chmod 777 file.java
用于文件过长时分页查看文件内容:more
每页10行查看boot.log文件
more -c -10 /var/log/boot.log
查看linux启动日志文件文件,并标明行号:cat
cat -ab /var/log/boot.log
创建text.txt文件:touch
touch text.txt
启动vi编辑器
vi filename
1)进入编辑模式
shift+i
2)退出编辑模式
esc-->shift+:
3)保存退出
wq
4)强制退出
q
查看日志
查看文件头10行
head -n 10 example.txt
查看文件尾10行
tail -n 10 example.txt
查看日志文件(这个命令会自动显示新增内容,屏幕只显示10行内容的(可设置))
tail -f exmaple.log
在日志中搜索关键字
less server.log
1)如果想从日志第一行开始搜索
less server.log-->/搜索关键字-->n查找下一个-->n查找上一个
2)如果想从日志最后一行开始搜索
less server.log-->shitf+g-->?搜索关键字-->n查找上一个-->n查找下一个
压缩与解压
解压
unzip filename.zip
压缩:
zip -r filename.zip dirname
将/etc文件夹中的文件归档到文件etc.tar(并不会进行压缩):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 -h
查看磁盘使用
free
查看磁盘空间占用情况:
df -ht
dh
查看当前目录下的文件及文件夹所占大小:
du -h --max-depth=1 ./*
显示当前网络接口状态
ifconfig
查看当前路由信息:netstat
netstat -rn
查看所有有效tcp连接:
netstat -an
查看系统中启动的监听服务:
netstat -tulnp
查看系统中某个端口监听服务:
netstat -ntlp|grep 8080
查看处于连接状态的系统资源信息:
netstat -atunp
查看是否存在某一个进程
ps -ef|grep java/pid
从网络上下载文件
wget
防火墙
linux中有两种防火墙软件,conteros7.0以上使用的是firewall,conteros7.0以下使用的是iptables,本文将分别介绍两种防火墙软件的使用。
firewall
开启防火墙:
systemctl start firewalld
关闭防火墙:
systemctl stop firewalld
查看防火墙状态:
systemctl status firewalld
设置开机启动:
systemctl enable firewalld
禁用开机启动:
systemctl disable firewalld
重启防火墙:
firewall-cmd --reload
开放端口(修改后需要重启防火墙方可生效):
firewall-cmd --zone=public --add-port=8080/tcp --permanent
查看开放的端口:
firewall-cmd --list-ports
关闭端口:
firewall-cmd --zone=public --remove-port=8080/tcp --permanent
iptables
安装
由于centeros7.0以上版本并没有预装iptables,我们需要自行安装。
安装前先关闭firewall防火墙
安装iptables:
yum install iptables
安装iptables-services:
yum install iptables-services
开启防火墙:
systemctl start iptables.service
关闭防火墙:
systemctl stop iptables.service
查看防火墙状态:
systemctl status iptables.service
设置开机启动:
systemctl enable iptables.service
禁用开机启动:
systemctl disable iptables.service
查看filter表的几条链规则(input链可以看出开放了哪些端口):
iptables -l -n
查看nat表的链规则:
iptables -t nat -l -n
清除防火墙所有规则:
iptables -f
iptables -x
iptables -z
给input链添加规则(开放8080端口):
iptables -i input -p tcp --dport 8080 -j accept
查找规则所在行号:
iptables -l input --line-numbers -n
根据行号删除过滤规则(关闭8080端口):
iptables -d input 1
ftp操作
ftp ip
输入密码密码;
bin将文件转换成二进制
get 获取文件名
软件的安装与管理
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
其他
终止线程(终止线程号位19979的线程)
kill -9 19979
查看线程个数(方便查看程序是否有误)
ps -lf 端口号|wc -l
查看网络的连通性
ping ip
查看ip端口的连通性检测(防火墙的连通性)
telnet ip 端口-->退出模式 shift+]-->quit
查看本地的ip
ifconfig
查看调度器
crontab -l
编辑调度器
crontab -e
想了解更多面经和开发小技能,欢迎扫描下方的二维码,持续关注!