mktemp Ubuntu 12.02 / Mint 9 Isadora의 다른 동작

mktemp Ubuntu 12.02 / Mint 9 Isadora의 다른 동작

Bash 스크립트에서는 ImageMagick의 변환 명령을 사용하여 일부 이미지 처리를 수행하고 있습니다.

쓰기 변환용 임시 gif 파일을 생성합니다.

변환에서 대상 파일이 gif 파일이어야 한다는 것을 알 수 있도록 파일 확장자가 .gif여야 합니다.

Ubuntu 12.04에서는 다음이 제대로 작동합니다.

mktemp /tmp/pre_XXXXXXXXXX.gif

하지만 Mint 9 Isadora에서는 다음과 같은 오류가 발생합니다.

mktemp: too few X's in template 

X를 아무리 많이 눌러도 동일한 오류가 발생하는데, 이는 ".gif" 접미사를 제거한 경우에만 해결됩니다.

왜 그런 겁니까? 민트는 우분투 기반 아닌가요?

답변1

mktemp표준 명령이 아니며 기능과 옵션은 시스템마다 크게 다릅니다(시스템에 mktemp 명령이 있는 경우). 귀하가 무엇을 mktemp받아들이는지 알 수 있는 유일한 방법은 해당 시스템의 설명서를 읽는 것입니다.

.gif어쨌든 결과가 gif 파일이어야 함을 imagemagick에 알리기 위해 확장이 필요하지 않습니다 .

$ tmpfile=$(mktemp /tmp/pre_XXXXXX)
$ convert rose: "gif:$tmpfile"
$ file "$tmpfile"
/tmp/pre_MDDsuZ: GIF image data, version 89a, 70 x 46

관련 정보