TRUNCATE(1) General Commands Manual TRUNCATE(1)

# [NAME](#NAME)

truncate - Shrink or extend the size of each file to the specified size.

# [SYNOPSIS](#SYNOPSIS)

**truncate** \[OPTION]... \[FILE]...

# [DESCRIPTION](#DESCRIPTION)

Shrink or extend the size of each file to the specified size.

# [OPTIONS](#OPTIONS)

[**-o**, **--io-blocks**](#o)

treat SIZE as the number of I/O blocks of the file rather than bytes

[**-c**, **--no-create**](#c)

do not create files that do not exist

[**-r**, **--reference** *&lt;RFILE&gt;*](#r)

base the size of each file on the size of RFILE

[**-s**, **--size** *&lt;SIZE&gt;*](#s)

set or adjust the size of each file according to SIZE, which is in bytes unless --io-blocks is specified

[**-h**, **--help**](#h)

Print help

[**-V**, **--version**](#V)

Print version

&lt;*FILE*&gt;

# [EXTRA](#EXTRA)

SIZE is an integer with an optional prefix and optional unit. The available units (K, M, G, T, P, E, Z, and Y) use the following format:  
'KB' =&gt; 1000 (kilobytes)  
'K' =&gt; 1024 (kibibytes)  
'MB' =&gt; 1000\*1000 (megabytes)  
'M' =&gt; 1024\*1024 (mebibytes)  
'GB' =&gt; 1000\*1000\*1000 (gigabytes)  
'G' =&gt; 1024\*1024\*1024 (gibibytes) SIZE may also be prefixed by one of the following to adjust the size of each file based on its current size:  
'+' =&gt; extend by  
'-' =&gt; reduce by  
'&lt;' =&gt; at most  
'&gt;' =&gt; at least  
'/' =&gt; round down to multiple of  
'%' =&gt; round up to multiple of

# [VERSION](#VERSION)

v(uutils coreutils) 0.12.0

2026-10-16

---

Document: truncate(1) from uutils 0.12.0-r4 (Chainguard OS)
Source: https://github.com/uutils/coreutils
