zoukankan      html  css  js  c++  java
  • 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):显示文件内容
    …………
    设定好参数后,从输入文件流中读入,从输出文件流中读出。

  • 相关阅读:
    数据库中计算值的更新方法
    多语言系统的数据库设计
    深蓝词库转换2.0发布——支持仓颉、注音、五笔、郑码、二笔等
    数据库SQL开发的一些要点
    最近工作有点累
    IPv6地址争夺中国再落后 申请量仅全球1.8%
    Nantpad 1.0 has been released!
    又丢了一辆自行车
    搬到新家了.
    我和我的好友的计算机之路.希望能给你的计算机生活点一盞明灯
  • 原文地址:https://www.cnblogs.com/harperhjl/p/15457346.html
Copyright © 2011-2022 走看看