• linux命令


    查日志

    查看文件前面50行数据

    head -n 50 filename == head -50 filename 

    查看文件后面50行数据

    tail -n 50 filename == tail -50 filename

    查看文件20-50行数据

    head -50 filename | tail -31

    先查看文件前50行数据,用 | 管道连接, 以取出的内容作为tail的输入

    awk 'NR==20 NR==50' filename 

    sed -n '20,30p' filename 

    查看某个关键词上下文10条数据

    grep -C 10 keyword catalina.out 查找关键字上下文的10条数据存到 catalina.out 文件中

    sed 命令

    利用模式进行匹配

    sed -n '/Hello/'p filename

    利用行号和模式进行匹配

    sed -n '3,/Hello/' filename

    打印1-3行数据

    sed -n '1,3p' filename

    让程序休眠xx秒

    sleep xxs

    让程序休眠xx分钟

    sleep xxm

    切换用户名

    su -用户名

    文件夹命令

    mkdir doc1 文件夹

    mkdir doc1 doc2 doc3 在当前目录创建同级目录doc1,doc2,doc3

    mkdir -p doc/subDoc -p创建多层级子目录 创建doc目录和子目录subDoc

    rmdir doc1 删除文件夹doc1及里面的全部内容

    rmdir -p a1/a2/a3 删除文件夹a1里面的全部目录

    文件命令

    touch 

    >

    cp 

    rm 

    mv

    tar 文件压缩与解压命令

            tar  -cvf c.tar a b 将文件a b 压缩到文件c.tar里面

            tar -xvf  c.tar a b 将文件c.tar里的文件a,b解压到当前文件夹里

            unzip a.zip 解压a.zip到当前文件夹里

    find 查找文件

            find a* 查找文件以a开头的文件

            find /a/s* 查找绝对路径/a目录下的以s开头的文件

            find a* -print 查找a开头的文件,并打印出来

    tail -n 500 显示文件后500行

    tail -1 显示文件最后一行

    tail -f 查看动态日志

    vi vim编辑文件

    vi a.txt编辑文件a.txt(如果文件a.txt不存在,则创建一个)

    i 开始编辑

    esc退出编辑文件

    :w保存修改

    :q退出修改

    :wq保存并退出修改

    :q!强行退出文件,不保存修改

    ?xx 查找文件中关于xx的内容

    echo 'hello'>>a.txt 输出hello追加到a.txt中

    echo '你好'>a.txt 用'你好'覆盖a.txt文件

    cat a.txt | grep 'hello' 在a.txt文件中查找含有hello的文本

    clear 清屏

    hostname 查看当前主机名

    hostname b 修改当前主机名为b

    reboot 重启

    shutdown 关机

    logout 注销当前用户

    top 实时,动态的查看当前CPU,MME(内存)最近的负载信息

                   按大M,从大到小的顺序 按大cpu,从大到小的顺序

    kill 7890 杀死进程号为7890的进程

    kill -9 7890 强杀pid为7890的进程

    ifconfig 查看当前ip地址

    ping ip/hostname

    at单定时次任务

    参数解释

    • -V 查看版本号
    • -d atrm的别名
    • -c 打印任务到标准输出
    • -l atq的别名
    • -m 当指定任务被完成后,将给用户发送邮件,即便没有指定输出
    • -q<队列> 使用指定的队列
    • -f<文件> 从指定的文件读入任务而不是标准输入读入
    • -t 以时间参数的形式提交要运行的任务

    示例

    22:34执行

    at 22:34

    三天后的下午5点执行

    at 5pm+3 days

    明天17:20输出到指定目录里面

    at 17:20 tomorrow

    ctrl+D结束编辑

    atq 查看有没有执行工作任务

    atrm 4 删除序号为4的任务

    at -c 3 显示已设置的任务列表

    启动

    1. systemctl start atd 启动at命令服务 atd 是at程序的守护线程
    2. systemctl status atd 查看at命令状态
    3. systemctl is-enabled atd 查看at命令是否开机启动

    要运行定时任务,Linux系统上必须要有负责这个计划任务的服务,这个服务就是atd服务。不过并非所有的linux distribution都会默认运行这个服务的。需要用/etc/init.d/atd start去激活。或者/etc/init.d/atd restart

    运行方式与安全

    at服务运行atd服务上面的,当使用at命令编写执行计划后,执行计划会写在/var/spool/at/目录内,该目录便能等待at服务的取用与运行。不过很多黑客攻击都是通过某个账号,进入到服务器内,然后执行一些定时计划,把系统信息发送给他们,以达到黑取信息的目的。这时候就得使用到两个文件来做控制,一个是/etc/at.allow,一个是/etc/at.deny。写在at.allow文件里的用户可以执行定时计划,如果用户没写在at.allow里面,则该用户不运行执行计划任务。也可以不用去考虑at.deny文件。如果文件at.allow不存在,则看at.deny文件,写在deny文件里面的用户会被拒绝,其它用户则允许执行。如果两个文件都不存在,则只可以有root用户去执行计划任务。很多distributions都是假设系统上所有的账户都是安全的,就创建了一个at.deny空文件,允许所有的用户都去创建和执行计划任务。

    crontab循环定时任务

    crond服务

    systemctl start crond

    systemctl reload crond 

    systemctl restart crond

    systemctl stop crond 

    system status crond

    等价于

    service crond start 

    service crond stop 

    service crond restart 

    service crond reload

    service crond status

    参数

    crontab -e 创建一个定时任务

    crontab -u user -e 创建用户user的定时任务

    crontab -l 查看定时任务详情

    crontab -u user -l 查看用户User的定时任务详情

    crontab -r -u u 删除指定定时任务

    实例

    * * * * * command

    分时日月周 命令

    第一列 分 1-59 (每分钟用* 或 */1)

    第二列 时 1-23 (0表示0点)

    第三列 日1-31    

    第四列 月1-12

    第五列 周1-6 (周日用0或7表示)

    第六列 表示用运行的命令

    * 表示每

    / 表示频率多少一次 */10 1-23/2

    - 表示区间 1-6 

    ,表示分散的几个数字 1,2,10-13, 16

    创建定时计划

    例1.每天2点1分执行备份任务

    crontab -e 1 2 * * * tar -zcvf /opt/grab2.tar.gz /boot/grub2

    crontab -l

    写在系统级别中的计划任务

    vim /etc/crontab

    1 2 * * * root echo 'a1111'>>a.txt

    运行方式与安全

    ‎/var/spool/cron/ 存放每个用户创建的定时任务,文件用创建者名字命名

    /etc/crontab 这个文件负责安排由系统管理员安排的维护系统或其它的计划任务

    /etc/cron.d/ 此目录用来存放要执行的crontab定时任务文件或脚本

    /var/adm/cron/ cron.allow cron.deny与单次任务的原理一样

  • 相关阅读:
    上手python之json数据格式
    【知识图谱】基于neo4j开发的信息化文档分析系统(源码)
    MySQL 进阶 图文详解InnoDB储存引擎
    英国博士后招聘|林肯大学—植物-土壤相互作用
    Android 组件化
    大模型在百度智能问答、搜索中的应用
    SpringCloud 08 Feign 负载均衡和服务熔断
    【Linux operation 47】在Vmware上 安装ubuntu-22.04.1
    初始化我的arcolinux
    chatgpt综述和报告
  • 原文地址:https://blog.csdn.net/qq_16298769/article/details/127869286