답변1
두 개의 파일로 시작해 보겠습니다.
1M.dat
- 1MiB 데이터(를 사용하여 생성됨truncate --size 1M 1M.dat
)10M.dat
- 10MiB 데이터(를 사용하여 생성됨truncate --size 10M 10M.dat
)
truncate --size 5M {file}
먼저 이 두 파일에 적용되는 명령을 고려하십시오. 두 번째 파일은 예상대로 잘리지만 첫 번째 파일은 잘립니다.증가하다필요한 5MiB 파일 길이를 달성하기 위한 크기입니다.
truncate --size '<5M' {file}
이제 이 두 파일에 적용되는 명령을 살펴보겠습니다. 두 번째 파일은 여전히 예상대로 잘리지만 첫 번째 파일은 길이가 이미 5MiB 미만이므로 변경되지 않은 상태로 유지됩니다. 명령을 "로 읽으십시오.파일을 다음으로 자릅니다.최대5MB".
답변2
파일이 더 작으면 <
truncate
해당 크기에 도달할 때까지 파일 끝에 0바이트가 추가되지 않습니다.
따라서 이 예는 아마도 대부분의 경우에 원하는 것일 것입니다.
truncate -s '<1M' filename
이렇게 하면 파일의 처음 1MB만 유지됩니다.
파일의 끝 부분만 유지하려면 다음을 사용할 수 있습니다 tail
.
tail -n 1000 filename > tmpfile && mv tmpfile filename