name 파일을 생성하고 싶습니다 example.file
. 사용할 수 있습니다
touch example.file
하지만 파일 크기가 정확히 24MB가 되길 원합니다. 터치의 맨 페이지를 이미 확인했지만 이와 같은 매개 변수는 없습니다. 특정 크기의 파일을 생성하는 쉬운 방법이 있습니까?
답변
dd를 사용할 수 있습니다 :
dd if=/dev/zero of=output.dat bs=24M count=1
또는
dd if=/dev/zero of=output.dat bs=1M count=24
또는 Mac에서는
dd if=/dev/zero of=output.dat bs=1m count=24
답변
내장되지 않은 Linux 또는 Cygwin (또는 GNU coreutils가있는 시스템) 및 FreeBSD에서 :
truncate -s 24m example.file
이것은 널 바이트로 가득 찬 파일을 작성합니다. 파일이 이미 존재하고 작은 경우 널 바이트를 사용하여 요청 된 크기로 확장됩니다. 파일이 이미 존재하고 더 큰 경우 요청 된 크기로 잘립니다.
널 바이트는 디스크 공간을 소비하지 않으며 파일은 스파 스 파일 입니다.
많은 시스템에서 head -c 24m </dev/zero >example.file
널 바이트로 가득 찬 스파 스가 아닌 파일을 작성합니다. 시스템에 옵션 head
이없는 경우 -c
(일반이지만 POSIX에는 없음) dd bs=1024k count=24 </dev/zero >example.file
대신 사용할 수 있습니다 (POSIX 호환).
답변
파일 내용에 신경 쓰지 않으면 다음을 사용하는 것보다 훨씬 빠릅니다 dd
.
fallocate -l 24M filename
분명히 dd
현대 시스템에서는 24MB 파일을 사용 하는 데 시간이 걸리지 않지만 큰 파일은 눈에 띄게 느려질 수 있습니다.
답변
dd를 사용할 수 있습니다 :
dd if = / dev / zero of = outputfile.out bs = 1024k count = 24
또는 Solaris를 사용하는 경우
mkfile 24m outputfile.out
답변
FROM_NODE=N01;
echo; cd $MOUNT_PATH; pwd; ls -la; sleep 1; echo;
WHEN="$(date +%Y-%m-%d_%H-%M-%S)";
fallocate -l 10M $MOUNT_PATH/"$FROM_NODE"_"$WHEN".dump
ls -lha; echo;