我有一个目录树,在每个目录中都有一个名为zero-file
的文件
我希望使用特定数量的零来初始化此文件,例如10000000000
我想写ASCII字符' 0'
我找到了2个解决方案
for i in `seq 1 10000000000`
do
echo -n 0 >> zero-file
done
第二个是:我初始化了一个名为base的文件,并在每个目录中复制了这个文件
cp base zero-file
这更快。 我想知道是否存在更快的方式。
答案 0 :(得分:9)
尝试将/dev/zero
用作仅包含零的虚拟输入文件。您可以使用dd
复制固定数量的字节:
dd if=/dev/zero of=zero-file bs=1 count=10000000000
这将从/dev/zero
复制一个字节10000000000次到zero-file
。您可以根据需要调整块大小和计数。
答案 1 :(得分:4)
将零写入零文件:
dd if=/dev/zero bs=1 count=10000000000 | tr '\0' '0' > zero-file
答案 2 :(得分:1)
根据@Cyrus的回答:
dd if=/dev/zero bs=1 count=10000000000 | tr '\0' '0' > zero-file
你说:
我有一个目录树,在每个目录中有一个名为的文件 零文件
因此你必须多次执行此命令 我的想法是将其保存在文件中一次,而其他目录则使用包含那些0的文件。
#for the first time
$ dd if=/dev/zero bs=1 count=10000000000 | tr '\0' '0' > zero-file
#for other directories
$ dd if=../zero-file of=zero-file bs=1 count=10000000000