Linux命令----搜索、定位文件位置、进程、定时任务、归档压缩、软件安装、其他 一、搜索 1.grep:显示文件中的匹配行 参数:-c:显示匹配行数 -e 字符串:匹配特殊字符串,如-开头 -i:忽略大小写 -v:输出不匹配行 -w:匹配指定字符串 可以和别的命令通过"|"管道符连接使用 例: grep zhou /etc/passwd grep -c zhou /etc/passwd ps -ef |grep java ps -ef|grep httpd |grep -v grep grep -v grep 就是查找不含有 grep 字段的行,去除包含grep的行,即过滤掉自己执行的grep 去掉空行、注释将其重定向到另一个文件test:grep -Ev ‘#|^$’ xxx > test.txt
2.find:查找目录下的文件 用法:find 目标目录 搜索参数 操作参数 参数:-name 文件名:可以跟通配符 -amin 分钟数:文件最后访问时间为指定分钟之前,负数表示之后 -atime 天数:文件最后访问时间为指定天数之前,负数表示之后 -cmin 分钟数:文件最后修改时间为指定分钟之前,负数表示之后 -ctime 天数:文件最后修改时间为指定天数之前,负数表示之后 -user 用户名:属于用户的目录和文件 -type 文件类型 f是 查找当前目录下 text01.txt: find ./ -name text01.txt find ./ -name text0 查找当前目录下:t:find ./ -type f -name ’ xxxl’ f:普通文件 d:文件夹 b:块设备文件 c:字符设备文件 l:连接文件 s:套接字文件 p:管道文件
二、定位文件位置 1.whereis 2.which 区别:whereis是搜索程序名,如果是一个普通的文件是找不到的 which命令只查找环境变量中path里面的路径
三、 进程 1.ps:显示瞬间进程 (process) 的动态,使用权限是所有使用者 参数: ps -aux USER 进程的属主; PID 进程的ID; PPID 父进程; %CPU 进程占用的CPU百分比; %MEM 占用内存的百分比; NI 进程的NICE值,数值大,表示较少占用CPU时间; VSZ 进程使用的虚拟內存量(KB); RSS 该进程占用的固定內存量(KB)(驻留中页的数量); TTY: 终端的次要装置号码 (minor device number of tty) STAT 进程当前的状态(“S”:中断 sleeping,进程处在睡眠状态,表明这些进程在等待某些事件发生–可能是用户输入或者系统资源的可用性;“D”:不可中断 uninterruptible sleep;“R”:运行 runnable;“T”:停止 traced or stopped;“Z”:僵死 a defunct zombie process) START 启动命令的时间点 TIME 进程执行起到现在总的CPU暂用时间 COMMAND 启动这个进程的命令 ps -ef 可以用管道符连接其他命令使用 ps -ef|grep java
2.kill:用来终止指定的进程 -9:强制终止进程 kill -9 pid 杀所有java进程:ps -ef | grep java|grep -v grep | awk ‘{print $2}’ | xargs kill -9
3.nohup 命令 & nohup:当前交互命令行退出的时候,程序还要在。 &:表示后台运行,程序不能霸占交互命令行 nohup java -jar xxx.jar &,返回的是进程号
四、归档压缩 1.zip:压缩zip包 zip:zip [选项] 压缩文件名 需要压缩的文档列表 参数: 2.unzip:解压缩以.zip结尾压缩文件 参数: 3.tar:文件打包 参数: 压缩tar -zcvf 1.tar.gz 1.txt 2.txt 3.txt,命令可以将1.txt,2.txt,3.txt 打包并压缩成1.tar.gz 解压tar zxvf 1.tar.gz,可以解压
四、crontab定时任务: 1.crontab命令:可以修改crontab配置文件,然后该配置由cron公用程序在适当的时间执行,该命令使用权限是所有用户 cat /etc/crontab 2.crontab 文件的格式为“M H D m d cmd” M代表分钟(0~59),H代表小时(0~23),D代表天(1~31),m代表月(1~12),d代表一星期内的天(0~6,0为星期天)。cmd表示要运行的程序,*代表每分钟都执行
-
-
-
-
- sh /home/zhou/test.sh 表示每分钟执行一次test.sh这个脚本
*/5 * * * * sh /home/zhou/test.sh 表示每5分钟执行一次test.sh这个脚本 30 21 * * *sh /home/apache/test.sh restart 表示每晚的21:30重启apache 使用场景:定时执行性能脚本,也可以用jmeter执行定时任务(测试计划–线程组–启动延迟) jenkis是跑自动化脚本,一般都是触发类型。
3.参数: -e:执行文字编辑器来设定定时任务,内定的文字编辑器是vi,crontab -e 每分钟输出 场景:定时备份日志。 -r:删除目前的定时任务,crontab -r -l:列出目前的定时任务,crontab -l
五、软件安装 1.rpm安装包 1)参数:-i 安装-U 更新(升级)-e 卸载 -v 显示安装信息-h 显示安装进度 2)使用: rpm -ivh xxx.rpm 3)查询:rpm -qa|grep xxx 4)安装: rpm -ivh xxx.rpm,如果提示有依赖关系,我们忽略依赖关系强制安装rpm -ivh --nodeps xxx 5)卸载:rpm -e xxx --nodeps,如果卸载的时候提示有软件依赖它,卸载时需要加上 --nodeps
2.yum:yum install -y xxx,yum各种配置文件安装后不知道放哪里的,不方便管理。
3.二进制安装:直接安装就可以用。
4.源码安装
六、其他服务 1.系统服务,安装prometus,将其做成系统服务(开机自启动、查看防火墙状态:systemctl status firewalld关闭防火墙:systemctl stop firewalld开机不启动防火墙:systemctl disable firewalld查看防火墙是否开机启动:systemctl is-enabled firewalld) 通过find找防火墙服务:find / -name firewalld.service find / -name prometheus.service /etc/systemd/system/prometheus.service 2.date:显示当前系统时间,后面可以跟日期格式 date +“%Y-%m-%d %H:%M:%S 星期%w” 3.cal:查看日历 4.alias:命令别名设定 vim /root/.bashrc 5.wget:下载文件 wget -c 是断点续传 -o 是下载并以不同的文件名保存 , 用法:wget -o 文件名 下载地址-o 是下载并以不同的文件名保存 7.curl:(用的好的话可以代替postman,可以发get,post请求) curl -i 127.0.0.1:8080/test2 curl 127.0.0.1:8080/test2
|