linux命令题目(1)

368 阅读1分钟
  • 1.查看/etc/passwd的第六行
    cat -n /etc/passwd | grep " 6" | awk '{for (i=2;i<=NF;i++) printf $i; print $NF}'
    head -6 /etc/passwd | tail -1
    sed -n '6,6p' /etc/passwd
    

  • 2.统计/etc/passwd有多少行
    wc -l /etc/passwd
    cat /etc/passwd | awk '{print NR}' | tail -1
    cat /etc/passwd | awk 'END{print NR}'
    grep -n '' /etc/passwd | tail -1 | awk -F: '{print $1}'
    sed -n '$=' /etc/passwd
    

  • 3.查看/etc/passwd中以/nologin结尾一共有多少行,并输出第5行
    grep -E 'nologin$' /etc/passwd #共有多少行
    grep -E "*nologin" /etc/passwd | head -5 | tail -1 #输出第5行
    

  • 4.查看/etc/passwd文件的第12行内容
    cat -n /etc/passwd | grep " 12" | awk '{for (i=2;i<=NF;i++) printf $i; print $NF}'
    head -12 /etc/passwd | tail -1
    sed -n '12,12p' /etc/passwd
    

  • 5.创建目录/root/test/a/b/c,并把/etc/passwd文件复制到/root/test/a/b/c目录中,重命名为 passwd.bak
    mkdir -p /root/test/a/b/c #创建目录
    cp -p /etc/passwd /root/test/a/b/c/ #文件复制
    mv /root/test/a/b/c/passwd /root/test/a/b/c/passwd.bak #重命名
    

  • 6.文件的ctimemtimeatime三属性测试过程
    touch test.log #创建文件
    stat test.log #查看文件属性
    

    文件:"test.log" 大小:0 块:0 IO 块:4096 普通空文件 设备:fd00h/64768d Inode:33759805 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:admin_home_t:s0 最近访问:2022-12-11 16:34:07.247454349 +0800 最近更改:2022-12-11 16:34:07.247454349 +0800 最近改动:2022-12-11 16:34:07.247454349 +0800

    cat test.log #查看文件
    stat test.log #查看文件属性,最近访问(atime)已更新
    

    文件:"test.log" 大小:0 块:0 IO 块:4096 普通空文件 设备:fd00h/64768d Inode:33759805 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:admin_home_t:s0 最近访问:2022-12-11 16:38:10.792192366 +0800 最近更改:2022-12-11 16:34:07.247454349 +0800 最近改动:2022-12-11 16:34:07.247454349 +0800 创建时间:-

    echo test >> test.log #追加文件内容
    stat test.log #查看文件属性,最近更改(ctime)已更新
    

    文件:"test.log" 大小:5 块:8 IO 块:4096 普通文件 设备:fd00h/64768d Inode:33759805 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:admin_home_t:s0 最近访问:2022-12-11 16:38:10.792192366 +0800 最近更改:2022-12-11 16:39:35.178448084 +0800 最近改动:2022-12-11 16:39:35.178448084 +0800 创建时间:-

    chmod +x test.log #修改文件权限
    stat test.log #查看文件属性,最近改动(mtime)已更新
    

    文件:"test.log" 大小:5 块:8 IO 块:4096 普通文件 设备:fd00h/64768d Inode:33759805 硬链接:1 权限:(0755/-rwxr-xr-x) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:admin_home_t:s0 最近访问:2022-12-11 16:38:10.792192366 +0800 最近更改:2022-12-11 16:39:35.178448084 +0800 最近改动:2022-12-11 16:40:57.356697110 +0800 创建时间:-

    vim test.log #vim编辑文件
    stat test.log #查看文件属性,全部时间都更新
    

    文件:"test.log" 大小:6 块:8 IO 块:4096 普通文件 设备:fd00h/64768d Inode:33759807 硬链接:1 权限:(0755/-rwxr-xr-x) Uid:( 0/ root) Gid:( 0/ root) 环境:unconfined_u:object_r:admin_home_t:s0 最近访问:2022-12-11 16:42:12.215923957 +0800 最近更改:2022-12-11 16:42:12.215923957 +0800 最近改动:2022-12-11 16:42:12.217923964 +0800 创建时间:-


  • 7.编写shell脚本(使用echo 使用cat)

    请选择你喜欢的水果

    1. banana
    2. apple
    3. pear
    vim fruits.sh
    
    #!/bin/bash
    
    f_arr=([1]='banana' [2]='apple' [3]='pear')
    
    echo -e '\n请选择你喜欢的水果:'
    for (( i=1;i<=${#f_arr[@]};i++));do
            echo '  - '$i'.'${f_arr[i]}
    done
    echo -e '\n'
    
    echo -n '请输入序号:'
    read type
    
    if [[ ${f_arr[$type]} = '' ]];then
            echo '你选择的水果不存在'
    else
            echo '你喜欢的水果为:'${f_arr[$type]}
    fi
    
    
    chmod +x fruits.sh
    ./fruits.sh
    

    [root@breeze19-1 ~]# ./fruits.sh 请选择你喜欢的水果:

    • 1.banana
    • 2.apple
    • 3.pear

    请输入序号:3 你喜欢的水果为:pear
    [root@breeze19-1 ~]# ./fruits.sh 请选择你喜欢的水果:

    • 1.banana
    • 2.apple
    • 3.pear

    请输入序号:4 你选择的水果不存在