常用命令(包括但不限于linux)
2020-04-07
端口检查
# 查看当前所有tcp端口
netstat -ntlp
# 查看所有80端口使用情况
netstat -ntulp | grep 80
# 查看所有3306端口使用情况
netstat -ntulp | grep 3306
# 查看8080端口占用情况
lsof -i:8080
# 检查端口连通情况, 这里可以用其他 ip
telnet 127.0.0.1 3306
# 检查端口连通情况, `mac` 下替代品
tcping ip port
nginx
# 验证nginx配置文件是否正确
nginx -tags
# 重启nginx
nginx -s reload
权限
# 把当前目录下所有文件的所有者改成 user
chown -R user .
查找文件
# 在文件夹 `/` 下查找名为 logs 的文件(夹)
find / -name logs
查看文件内容
# 输出 filename 文件最后 10 行
tail filename
# 会把 filename 文件里的最尾部的内容显示在屏幕上,并且不断刷新
tail -f filename
#显示文件的尾部 n 行内容
tail -n 5 filename
文件处理
# 指定行数来切割
split -l 300 log.txt newfile
# 指定文件大小来切割
split -b 500m log.txt newfile
# 把分割的文件重新组合起来
cat newfile* > orifile
查看磁盘状态
# 查看文件系统的磁盘使用情况统计
df -h
# 查看当前目录下所有目录的大小
du -hs *
mysql
# 连接具体 ip 端口的数据库
mysql -u root -p -h ${IP} -P ${PORT}
# 进入 mysql shell 列出所有所有正在运行的线程
show full processlist;
# 同步数据库
mysqldump --skip-lock-table -h${ip} -P${port} -u${username} -p${password} --where="${where}" ${db} ${table} > ${db}.sql
mysql -h{ip} -u${username} -p${password} ${db} < ${db}.sql
# 把数据导出
echo 'select * from db.table' | mysql -h${IP} -P${port} -u${username} -p${password} > data.txt
网络联通检测
# ping
ping IP
ping URL
# traceroute
# 该命令获取当前主机到目标主机所经过的路由(网关)
# 该命令通过发送小的数据包到目的设备直到其返回,来测量其需要多长时间
traceroute 192.168.1.131
traceroute www.baidu.com
# mtr
# 网络连通性判断工具,它结合了ping, traceroute,nslookup 的相关特性
mtr 192.168.1.131
traceroute www.baidu.com
# tracepath
# 用来追踪并显示报文到达目的主机所经过的路由信息
tracepath www.baidu.com
# windows tracert
tracert 192.168.1.131
grep
grep 命令用于查找文件里符合条件的字符串。
# 在当前目录中,查找所有文件中包含 error 字符串的文件
grep error *