--silent
저는 터미널 기반 애플리케이션을 설계 중이며 원하지 않는 경우 노이즈를 억제하는 플래그를 구현하고 싶습니다.
이 애플리케이션에서는 애플리케이션이 필요한 작업을 수행할 수 없을 때 오류가 가장 자주 기록되고, 어떤 작업을 수행할 수 없지만 애플리케이션이 계속 실행될 때 경고가 기록됩니다.
즉, --silent
플래그가 경고와 오류를 억제해야 합니까, 아니면 경고만 억제해야 합니까? 이에 대한 일반적인 관행은 무엇입니까?
끝나고ruby
ruby -w0
경고하다귀하의 스크립트에 대한 정보(정보 ruby --help
)
하지만 에서는 억제합니다 curl
.curl --silent
모두산출.
답변1
에서 볼 수 있듯이 curl
/ ruby
보편적인 관례는 없습니다. 이는 애플리케이션과 애플리케이션이 제시할 수 있는 문제에 따라 크게 달라집니다. 또한 사용 방법에 따라 다릅니다. 일부 응용 프로그램에서는 --quiet
플래그 를 지정하는 것이 합리적 --really-quiet
이지만 일부 응용 프로그램에서는 과잉입니다. 또한 --really-quiet
기술적으로 말하면 플래그는 일반적으로 필요하지 않습니다. 왜냐하면 모든 메시지 삭제를 사용할 수 있기 때문입니다 2>/dev/null
. 일반적인 지침으로 다음을 권장합니다.
의미 있는 반환 코드가 있어야 합니다. 애플리케이션이 다양한 오류 클래스(예: 사용자 오류, 외부 오류)를 구별할 수 있는 경우 다양한 반환 코드를 갖고 이를 기록하세요.
애플리케이션이 많은 수의 경고를 생성할 수 있는 경우 플래그를 사용하여 경고만 필터링하세요. 애플리케이션에 다양한 로그 수준(예: 정보, 알림, 경고, 오류)이 있는 경우 플래그를 사용하여 필터링하세요. (좋다:
-q
,-qq
,-qqq
.)애플리케이션이 주로 대화형으로 사용될 경우 경고는 표시하지 말고 오류는 표시하지 마세요. 특히 오류 후에도 응용 프로그램이 중지되지 않는 경우.
애플리케이션이 주로 자동화된 설정에서 사용되는 경우 경고 및 오류는 아무도 볼 수 없으므로 표시하지 마세요. 그러나 오류 발생 후 애플리케이션이 중지되고 의미 있는 반환 코드가 생성되는 경우에만 해당됩니다.