Com uma instalação típica do BusyBox, acho que você terá que analisar a saída de ls
para obter o tamanho. Depois de ter o tamanho, extraia os primeiros n-2 bytes do arquivo com head
.
size=$(ls -Lnd -- "$file" | awk 'NR==1 {print $5}')
head -c "$(($size - 2))" <"$file" >"$file.new"
Se você quiser truncar o arquivo, use dd
.
size=$(ls -Lnd -- "$file" | awk 'NR==1 {print $5}')
dd if=/dev/null of="$file" bs="$(($size - 2))" seek=1