Concalc - "tcsetattr 오류: 장치에 부적절한 ioctl"

Concalc - "tcsetattr 오류: 장치에 부적절한 ioctl"

Bash 스크립트에서는 다음을 사용합니다.

#!/bin/bash

calc=$(concalc "$*")

printf "%s\n" "$calc"

원하는 결과를 얻었지만 항상 다음과 같은 오류 메시지가 나타납니다.
tcsetattr error: Inappropriate ioctl for device

누구든지 이것을 제거하는 방법을 알고 있습니까? 단독으로 사용할 때는 문제가 없는데 a나 a에서 사용 concalc하자마자 이런 메시지가 뜹니다.command-substitutionpipe

답변1

실행 모드(대화형 또는 비대화형)에 관계없이 에코 비활성화와 같은 일부 터미널 속성 설정을 고집하는 것 같습니다. 설정과 재설정 사이에 터미널에서 아무 작업도 수행하지 않기 때문에 스크립트에 약간의 용도가 있다고 가정합니다.

코드를 수정하는 것 외에도 오류를 리디렉션할 수 있습니다.

calc=$(concalc "$*" 2>/dev/null)

관련 정보