Copy n bytes of data x to file

放肆的年华 提交于 2021-02-18 10:44:30

问题


How we can copy for example 10 bytes of '7' to a file?

How can I generate those 10 bytes of 7?

For example for n bytes of zero I'm doing dd if=/dev/zero of=myFile bs=1 count=10.


回答1:


You can send the zeros to stdout and translate them to 7, or what ever you like.

dd if=/dev/zero bs=1 count=10 | tr "\0" "\7" > file.bin



回答2:


redirect an echo output to dd

echo 7777777777 | dd of=myFile bs=1 count=10

or

echo -e '\x7\x7\x7\x7\x7\x7\x7\x7\x7\x7' | dd of=myFile bs=1 count=10

if you need the binary representation of 7




回答3:


Q: How we can copy for example 10 bytes of '7' to a file?

A: "dd" is certainly on option. One of many :)

How can I generate those 10 bytes of 7?

A: However you want. For example, you can write a C program:

#include<stdio.h>

#define MY_FILE "7";

char my_data[] = {
  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0xa
};

int
main (int argc, char *argv[])
{  
  FILE *fp = open (MY_FILE, "wb");
  if (!fp) {
    perror ("File open error!");
    return 1;
  }
  fwrite (my_data, sizeof (my_data), fp);
  fclose (fp);
  return 0;
}


来源:https://stackoverflow.com/questions/8262758/copy-n-bytes-of-data-x-to-file

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!