• 20145330 《信息安全系统设计基础》第10周学习总结


    20145330 《信息安全系统设计基础》第10周学习总结

    视频知识总结

    • 目录 ls
      • 功能:列出目录内容,显示文件信息
      • ls -l:显示当前目录下详细信息(共7列)
        • 第一位:文件属性(类—文件-目录)
          • 二到四位:文件创建者权限(-代表无权限,r代表读权限,w代表写权限,x代表执行权限
          • 五到七位:代表同组用户权限
          • 八到十位:其他用户权限(具有读和其他权限,没有写权限)
        • 第二列:文件子目录数
        • 第三列:所有者
        • 第四列:所属用户组
        • 第五列:文件大小
        • 第六列:文件最后修改时间
        • 第七列:文件名
      • man ls
        • 查看功能
    • 如何编写ls
      • 如何列出目录内容

      • 如何判断目录名与文件名

        • 什么是目录:目录是一种特殊的文件,它的内容是文件和目录的名字
          • 目录文件永远不会空,每个目录都有至少两个特殊的项“."(当前目录)和:".."(上一级目录)
        • 是用什么系统项读取目录调用:man -k directory|grep read
        • 输入命令:man 3 readdirectory可以看到详细信息
        • see also :closedir(3) opendir(3)
          • man opendirz(3)
          • 自己编程实现:
    
    `main`
    
    	opendir
    	while(readdir)
    		print d_name
    	closedir
    
    • 问题:

      • 排序
        • 文件名读入数组
        • qsort()排序
      • 分栏:
        • 文件名读入数组
        • 计算列宽和行数
      • .和..
        • 加入-a选项
        • 没有-a,不显示隐藏文件
      • -l
        • 功能不同
        • 单独实现
    • 如何读取文件属性

      • man 2 stat知给出文件路径获得文件属性
      • st_size:所占字节数
      • st_nlink:文件链接数
      • st_mtime:文件最后修改时间(time_t->ctime)
      • st_mode:文件类型和许可权限

    who

    • who能做什么?使用一下man who

    • who命令参数:

      • -a 打印能打印的全部
      • -d打印死掉的进程
      • -m 同am i,mom likes
      • -q 打印当前登录用户数及用户名
      • -u 打印当前登录用户登录信息
      • -r 打印运行等级
    • 通过whatis who或man -f who直接运行命令,可以了解who的大致功能,要进一步了解who的用法,需要借助联机帮助manpages。

    代码调试

    代码cp1.c

    • 进行复制文件的操作,需要有源文件和目的文件

    代码fileinfo.c

    • 用来实现显示文件信息。先判断命令是否有操作数,有的话才能继续进行下去,如果没有报错就打印出来相关文件信息,报错就用perror将报错信息打印出来。
    • 同样需要输入要查看的文件才会有信息打印出来

    代码filesize.c

    • 原本的代码是指定查找etc/passwd文件的大小,所以后面输入什么文件名都是一样的大小

    代码ls1.c

    • 简单的显示所在文件夹中的文件及文件夹列表

    代码ls2.c

    • 显示所在文件夹中的文件及文件夹详细信息的列表

    代码setecho.c

    • 可以改变符号显示状态,no是不显示符号,yes是显示
    • 可以看到no指令后输入的命令看不见,状态值为0;yes指令后恢复可见,状值态为1.

    代码echostate.c

    用来检查命令行中的提示符是否显示的,如果显示,输入的命令都可见,不显示则表示输入的命令不可见

    代码spwd.c

    显示出所在目录

    代码testioctl.c

    计算当前命令行窗口的行列数大小
    不同大小的变化如下:

    代码who1.c

    从UTMP_FILE文件中读取系统中用户信息

    代码调试中的问题

    • 代码fileinfo.c运行不出来,几次尝试都警告权限不够

    • 代码setecho.c运行不出来

    本周代码托管截图

    感悟与思考

    实践很重要

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 200/200 2/2 20/20
    第二周 300/500 2/4 18/38
    第三周 500/1000 3/7 22/60
    第四周 300/1300 2/9 30/90
    第五周 50/1350 2/11 20/120
    第六周 100/1450 1/12 20/140
    第七周 50/1500 1/13 20/160
    第八周 000/1500 2/15 30/190
    第九周 50/1550 2/17 30/220
    第十周 400/2050 2/19 30/250
  • 相关阅读:
    一起采坑redis(1)--- Redis Save 与 BGSAVE 的区别
    logstash系列一使用logstash迁移ES数据
    MHA+Atlas+mysql一主一从开启gtid安装配置与实验
    innodb log file size 配置估算以及修改
    linux 硬盘速度测试
    YCSB-压测
    mysql 5.7配置文件参数详解
    mysql 批量插入数据存储过程
    int unsigned实验
    mongodump 备份
  • 原文地址:https://www.cnblogs.com/20145330swx/p/6081190.html
Copyright © 2020-2023  润新知