linux自用命令

文件内容查找

复制代码
# 查找文件夹下或某个文件包含某字符的所有文件
# -r 是递归查找
# -n 是显示行号
# -C 5 显示file文件里匹配字串那行以及上下5行
# -B 5 显示前5行
# -A 5 显示后5行
# --include '*.html' 指定后缀名
grep -rn "message" ./
# 实时显示日志记录
tail -100f a.log
# tail和多个grep使用
tail -100f a.log | grep --line-buffer aa | grep bb
# 查找包含 2020 的 catalina.out文件所在的行
find ./ -name catalina.out | xargs grep 2020
# grep之后,按行统计行数 wc -l
find ./ -name catalina.out | xargs grep 2020 | wc -l
# 查看当前路径下各个目录大小(后面也可以跟指定目录), -h 以K,M,G为单位,提高信息的可读性。
du -sh *
# 查找当前目录下的大文件并倒叙排列
du -sh * | sort -nr | head 

根据pid查程序目录

复制代码
ps -ef | grep redis
# root     14145     1  0 Jul08 ?        00:17:14 ./redis-server *:6379
ls -al /proc/14145/exe
# lrwxrwxrwx. 1 root root 0 7月 31 05:10 /proc/14145/exe -> /usr/local/bin/redis-server

Tomcat

XML 复制代码
# 查看tomcat是否启动,并查看tomcat端口号
ps -ef| grep tomcat
sudo netstat -apn | grep 7507  
netstat --pan | grep XXXX  (此处XXXX为pid)
# 重启tomcat
cd /home/yx/server8.5.50/apache-tomcat-8.5.40/bin
sh shutdown.sh
sh startup.sh
# 有时关闭服务操作不成功,强制删掉后台进程
kill -9 7010
# 实时查看tomcat运行日志
cd /home/yx/server8.5.50/apache-tomcat-8.5.40/logs
tail -f -n 500 catalina.out #查看日志,同样Ctrl+c退出
# 清缓存
cd /home/yx/server8.5.50/apache-tomcat-8.5.40/work
rm -rf Catalina
# 截取日志 (前提是 catalina.out 日志中的每行都是以日期格式开头的)
sed -n '/^2012-05-15/,/^2012-05-16/p' catalina.out > catalina_20120515.out

权限

XML 复制代码
#给文件的所有者加上 x 权限,即可使用:
chmod   u+x   文件
#查看文件权限
ls  -l   文件

文件复制/移动/大小

XML 复制代码
#复制文件夹 -r
cp -r a文件夹 b新文件夹
#将/test1目录下的file1复制到/test3 目录,并将文件名改为file2
mv /test1/file1 /test3/file2

上传下载

XML 复制代码
yum -y install lrzsz #安装
rz #上传
sz #下载

压缩解压

XML 复制代码
#压缩指定文件夹为 tar.bz2
[root@db phantomjs]# tar -cjf echarts-convert.tar.bz2 echarts-convert/
#解压 tar.bz2
[root@db yx_zb]# tar -xjvf echarts-convert.tar.bz2

建立软链接

XML 复制代码
ln -s /usr/PhantomJS/phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/bin/phantomjs

更改环境变量

XML 复制代码
vim /etc/profile #编辑
source /etc/profile #重启使环境变量生效

端口/防火墙

XML 复制代码
netstat -ntlp   #查看当前所有tcp端口
netstat -ntulp |grep 80   #查看所有80端口使用情况

#开放端口: 1.修改 /etc/sysconfig/iptables 文件
# 2.如开放80端口,ACCEPT为开启、DROP为关闭
iptables -A INPUT -p tcp --dport 80 -j ACCEPT #当数据从外部进入服务器为目标端口
iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT #数据从服务器出去
service iptables save #保证重启服务器后也不会失效

service iptables restart #改完后重启防火墙
/sbin/iptables -L -n #查看开放的端口

禁IP

XML 复制代码
iptables -A INPUT -p tcp -s 192.168.1.2 -j DROP
相关推荐
张小姐的猫13 分钟前
【Linux】多线程 —— 线程互斥
linux·运维·服务器·c++
IT_陈寒39 分钟前
Redis缓存击穿把我整不会了,原来还有这手操作
前端·人工智能·后端
YuanDaima20481 小时前
Linux 进阶运维与 AI 环境实战:进程管理、网络排错与 GPU 监控
linux·运维·服务器·网络·人工智能
idcu1 小时前
深入 Lyt.js 组件系统:L2 渲染引擎层的核心
前端·typescript
这是程序猿1 小时前
Spring Boot自动配置详解
java·大数据·前端
文心快码BaiduComate1 小时前
干货|Comate Harness Engineering工程实践指南
前端·后端·程序员
还有多久拿退休金1 小时前
一张栈的图,治好你面试答不出 script 阻塞的病
前端·javascript
光辉GuangHui2 小时前
Agent Skill 也需要测试:如何搭建 Skill 评估框架
前端·后端·llm
To_OC2 小时前
我终于搞懂 Claude Code 核心逻辑!90%的人都用错了模式
前端·ai编程
蓝宝石的傻话2 小时前
Headless浏览器的隐形陷阱:为什么你的AI自动化工具抓不到页面早期错误?
前端