macOS 버전의 분할 패키지를 사용하여 파일을 4개의 청크로 분할합니다.

macOS 버전의 분할 패키지를 사용하여 파일을 4개의 청크로 분할합니다.

GNU/Linux에서는 파일을 4개의 동일한 청크로 분할하려면 다음을 수행할 수 있습니다.

split temp -n 4 PREFIX_

split그러나 macOS에는 BSD 버전의 유틸리티 에 대한 옵션이 없는 것 같습니다 -n. macOS에서 GNU 분할 명령의 에뮬레이션은 무엇입니까?

답변1

불행히도 MacOS에는 버그가 있는 BSD 버전의 coreutils가 포함되어 있습니다. Head는 또한 음수 바이트 수를 지원하지 않지만 GNU 에뮬레이션에서는 head -c -1.

MacOS에 GNU 버전의 coreutils를 설치했습니다.

brew install coreutils

이렇게 하면 접두사가 붙은 Split 및 head 를 포함하여 모든 coreutil이 설치됩니다 g. 이제 다음과 같이 할 수 있습니다.

gsplit ${file} -n 4 PREFIX_

그리고

ghead -c -1 ${file}

답변2

파일 크기를 찾아 4로 나눈 다음 MacOS split -b바이트 수를 대신 사용할 수 있습니다. 이것을 테스트할 방법은 없지만 대략적으로는 다음과 같습니다.

#!/bin/bash
file=myfile
size=$(stat -f '%z' "$myfile")
let part=size/4
[ "$part" = 0 ] && part=1
split -b "$part" "$myfile" ...

split -b 0크기가 4바이트 미만인데 1로 설정하면 어떻게 되는지 모르겠습니다 . 매뉴얼 페이지를 참조하세요나뉘다그리고통계자료.

관련 정보