• xxd


    xxd

    1. 学习xxd的使用,提交至少3个应用截图
    2. xxd的主要功能是什么?需要使用什么系统调用来实现?写出你的推导过程,命令
    3. 写出实现xxd的伪代码

    学习xxd的使用,提交至少3个应用截图

    man xxd

    显示文件的十六进制形式

    -b以二进制形式显示文件内容

    将十六进制显示的内容输出到制定文件
    指定显示文件的字节数

    xxd的主要功能是什么?需要使用什么系统调用来实现?写出你的推导过程,命令

    • 主要功能:xxd 命令用于使用二进制或十六进制格式显示文件内容,可以将指定文件或标准输入以十六进制转储,也可以把十六进制转储转换成原来的二进制形式。
    • Usage:
      xxd [options] [infile [outfile]]
      or
      xxd -r [-s [-]offset] [-c cols] [-ps] [infile [outfile]]
    • 选项:
        -a          缺省忽略转换: 使用‘*’替换空行.
        -b          二进数数据转储 (与 -ps,-i,-r不兼容). 默认为16进制.
        -c cols    每行多少列octets(特制8比特的字节). 默认为16列(-i: 12, -ps: 30).
        -E          使用EBCDIC字符集. 默认为ASCII字符集.
        -e          小端模式转储 (与 -ps,-i,-r不兼容).
        -g          在正常输出中,每组八位字节数. 默认为2个 (-e: 4).
        -h          输出此帮助.
        -i          使用C语言文件样式输出.
        -l len      在len个八位字节后停止.
        -o off      在off个偏移量后开始输出.
        -ps         以在行后添加16进制转储内容的格式输出.
        -r          逆向操作: 转换(或修补) 十六进制内容为二进制内容.
        -r -s off   在off个偏移量后开始转换16进制内容为二进制内容
        -s [+][-]seek  start at <seek> bytes abs. (or +: rel.) infile offset.(没看懂)
        -u          使用大写字母进行十六进制表示.
        -v          显示版本: "xxd V1.10 27oct98 by Juergen Weigert".
      

    系统调用

    man -k - system | grep calls

    getmsg

    写出实现xxd的伪代码

    读取参数(输入文件标识符、输出文件标识符,其他参数);
    if(存在参数-a):总动跳过空白内容;
    if(存在参数-b):以二进制显示
    if(存在参数-l):显示文件内容
    …………
    设定好参数后,从输入文件流中读入,从输出文件流中读出。

  • 相关阅读:
    C#下给数字前面补0的方法
    Notepad++ xml 文件不能语法着色的问题解决
    excel 技巧
    编译时报警 implicit declaration of function
    配置ASP.NET平台时遇到的“访问IIS元数据库失败”解决方案
    用360安全卫士批量本地快速给系统打补丁【转贴】
    新雨情系统随笔
    我的开发博客开通了
    JQuery资料
    IGNORE_DUP_KEY = OF的作用
  • 原文地址:https://www.cnblogs.com/harperhjl/p/15457346.html
Copyright © 2020-2023  润新知