做 Java 开发好几年了,部署 JavaWeb 到服务器上,一般都选择 Linux,Linux 作为服务器真是不二之选,高性能,只要熟悉 Linux,操作快捷,效率很高。
总结一下工作中常用的 Linux 命令备忘:
一、文件操作相关命令
1. 创建目录
mkdir software
2. 创建多级目录
mkdir /opt/software/ -p
3. 删除文件或目录
rm test.sh 此删除命令运行后需要输入 y 确认的交互过程
rm -f test.sh 直接强制删除不需要输入 yes 确定
rm -rf /opt/software 直接强制删除目录,不需要输入 yes 确定
4. 文件权限
chmod +x test.sh 给 test.sh 文件赋可执行权限
chmod 777 /REC -R 赋所有权限(完全控制权限)给 / REC 以及目录下的所有文件和文件夹
chown mysql.mysql /usr/mysqlData -R 把文件夹的拥有者改为 mysql 组的 mysql 用户
创建新文件
touch readme.txt
编辑文件
vim readme.txt
解压 tar.gz 包
tar -xzvf test.tar.gz x: 解压,z: 压缩包,v: 显示加压文件和解压过程
搜索文件
find . -type f -name "*.sh" | xargs grep "iptables" 从当前目录开始搜索. sh 中包含 iptables 字符串的文件
find /Rec -maxdepth 1 -mtime +90 -type d -name "[0-9]*" -exec rm -rf {} \; 搜索 REC 目录下三个月(90 天)以前以数字开头的文件夹,并执行删除搜到的内容
查看目录大小
du -lh
du -ah --max-depth=1
df -ls
二、端口,进程相关命令
查看端口占用情况
netstat -lnt 查看当前有哪些端口在监听
lsof -i:8080 (端口号) 查看 8080 端口被什么应用占领
查看进程运行情况
ps -ef | grep nginx
查看系统版本
设置系统日期
date -s '2016-06-06 06:06:06'
date 查看系统时间
hwclock 同步硬件内核时间?
查看实时日志输出,例如查看 tomcat 的实时控制台打印日志
tail -f /usr/local/tomcat/logs/catalina.out
查看大文件日志
less /usr/local/tomcat/logs/catalina.out
打开后,按 shift 加 > 可以调到文件底部
三、安装配置相关命令
CentOS 在线安装软件包
yum install gcc gcc-c++ openssl
# uname -a # 查看内核 / 操作系统 / CPU 信息
# head -n 1 /etc/issue # 查看操作系统版本
# cat /proc/cpuinfo # 查看 CPU 信息
# hostname # 查看计算机名
# lspci -tv # 列出所有 PCI 设备
# lsusb -tv # 列出所有 USB 设备
# lsmod # 列出加载的内核模块
# env # 查看环境变量资源
# free -m # 查看内存使用量和交换区使用量
# df -h # 查看各分区使用情况
# du -sh <目录名> # 查看指定目录的大小
# grep MemTotal /proc/meminfo # 查看内存总量
# grep MemFree /proc/meminfo # 查看空闲内存量
# uptime # 查看系统运行时间、用户数、负载
# cat /proc/loadavg # 查看系统负载磁盘和分区
# mount | column -t # 查看挂接的分区状态
# fdisk -l # 查看所有分区
# swapon -s # 查看所有交换分区
# hdparm -i /dev/hda # 查看磁盘参数 (仅适用于 IDE 设备)
# dmesg | grep IDE # 查看启动时 IDE 设备检测状况网络
# ifconfig # 查看所有网络接口的属性
# iptables -L # 查看防火墙设置
# route -n # 查看路由表
# netstat -lntp # 查看所有监听端口
# netstat -antp # 查看所有已经建立的连接
# netstat -s # 查看网络统计信息进程
# ps -ef # 查看所有进程
# top # 实时显示进程状态用户
# w # 查看活动用户
# id <用户名> # 查看指定用户信息
# last # 查看用户登录日志
# cut -d: -f1 /etc/passwd # 查看系统所有用户
# cut -d: -f1 /etc/group # 查看系统所有组
# crontab -l # 查看当前用户的计划任务服务
# chkconfig –list # 列出所有系统服务
# chkconfig –list | grep on # 列出所有启动的系统服务程序
# rpm -qa # 查看所有安装的软件包