【干货合集】linux运维命令

systemd查看当前所有正在运行中的服务
systemctl list-units --type=service --state=running
按启动时间排序查看所有进程
ps aux --sort=start_time
查看当前谁在进行系统调用

需要安装 bpftrace ,安装好后执行:

bpftrace -e ' tracepoint:syscalls:sys_enter_execve  { printf("comm: %s, argv[0]:%s, argv[1]:%s, arg[2]: %s, arg[3]: %s,  pid: %d, cpu: %d\n", comm, str(args->argv[0]),str(args->argv[1]), str(args->argv[2]), str(args->argv[3]), pid, cpu); }'

图中看到,mgw-high-ava 这个进程调用了ping 192.168.4.8 -I eno1 命令。

find怎么排除指定目录

排除一个目录用 -not -path “xxx” 或 ! -path “xxx” 。如果要想排除多个目录

find . -type f -name ".txt" -not -path "./example/*"
# 或者
find . -type f -name "*.txt" ! -path "./example/*" 

如果要想排除多个目录,要用 -a 连结起来。

find . -type f -size +10M -not -path "./mirror/*" -a ! -path "*wp-data*"
Bash中实现字符串大小写转换

使用Bash参数扩展方案,转大写:

echo "${str^^}"

转小写:

echo "${str,,}"
查看系统当中已被删除但未释放的文件

使用lsof命令,+L1,表示列出系统中所有 链接数小于1 的已打开文件,链接数为0表示文件已被删除(unlinked),但仍被某些进程占用(例如日志文件被删除但未释放)。

lsof +L1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注