Mercurial > hg > toybox
view toys/other/fallocate.c @ 993:d5a1174ff88a
New toy: fallocate
author | Felix Janda <felix.janda@posteo.de> |
---|---|
date | Fri, 09 Aug 2013 20:46:02 +0200 |
parents | |
children | 2102af52be68 |
line wrap: on
line source
/* fallocate.c - Preallocate space to a file * * Copyright 2013 Felix Janda <felix.janda@posteo.de> * * No standard USE_FALLOCATE(NEWTOY(fallocate, ">1l#|", TOYFLAG_USR|TOYFLAG_BIN)) config FALLOCATE bool "fallocate" default n help usage: fallocate [-l size] file Tell the filesystem to allocate space for a file. */ #define FOR_fallocate #include "toys.h" GLOBALS( long size; ) void fallocate_main(void) { int fd = xcreate(*toys.optargs, O_RDWR | O_CREAT, 0644); if (posix_fallocate(fd, 0, TT.size)) error_exit("Not enough space"); if (CFG_TOYBOX_FREE) close(fd); }