Shell-Script
Concalc - “tcsetattr 錯誤:設備的 ioctl 不合適”
在 bash 腳本中,我使用以下內容:
#!/bin/bash calc=$(concalc "$*") printf "%s\n" "$calc"
我確實得到了我想要的結果,但總是出現以下錯誤消息:
tcsetattr error: Inappropriate ioctl for device
有誰知道如何擺脫這個?當我單獨使用
concalc
它時沒問題,但只要我在 acommand-substitution
或 a中使用它,pipe
我就會收到此消息。
它似乎堅持設置一些終端屬性,比如禁用迴聲,不管它執行的模式(互動與否)。我認為它在某種程度上對腳本有用,因為它在終端上在設置和重置它之間沒有做任何事情。
除了修復程式碼之外,您還可以將錯誤重定向:
calc=$(concalc "$*" 2>/dev/null)