Mac OS X 10.6에서 하드웨어 경고음을 울리는 방법


174

Mac OS X 10.6이 오픈 수세 및 기타 배포판에서와 같은 하드웨어 경고음을냅니다. 나는 다음과 같은 접근법을 시도했다.

터미널-> 경고음 = -bash : 경고음 : 명령을 찾을 수 없음

터미널-> 비프 음 = 음성에서 비프 음 (하드웨어 비프 음이 아니라 최고;))

applescript-> 경고음 = Macintosh 벨 (하드웨어 경고음이 필요합니다!)

bin / bash 또는 applescript에서 하드웨어 경고음을 만드는 방법을 아는 사람이 있습니까?


3
@elhombre, Mac OS X이 그런 일을 할 수 있다고 생각하는 이유는 무엇입니까?
Carl Norum

19
시도 : 당신이 아무것도 생각하지 않으면 "경고음"이라고 말하면, 내가 생각할 수있는 가장 가까운.
Patrik Björklund

30
@Patrik-+1, 좋습니다. printf "\a"도움이된다면 OS에 경고음을냅니다.
Carl Norum

9
@Carsten : Mac PC입니다. PC = 개인용 컴퓨터. IBM (호환) PC가 아닙니다.
Paul R

2
인텔 기반 MAC IBM 호환 PC입니다
Nathan Garabedian

답변:


24

macOS에는 "하드웨어 경고음"이 없습니다.

여러분이 생각하는 기능은 매우 오래된 (1990 년대 이전) IBM PC 호환 하드웨어의 인공물입니다. 대부분의 컴퓨터에 사운드 카드가 설치되기 전에 대부분의 컴퓨터에는 타이머 칩의 채널 중 하나에 작은 스피커 또는 피에조 버저가 연결되어있었습니다. 간단한 톤 또는 경고음을 생성하는 데 사용할 수 있습니다. 많은 컴퓨터가 사운드 카드를 통합 한 후에도 컴퓨터가이 출력을 별도의 내부 스피커로 라우팅하는 것이 일반적이었습니다. 최근에는 많은 컴퓨터, 특히 랩톱에서이 기능을 온보드 사운드 카드에 통합했습니다.

PC 스피커 인터페이스의 작동 방식에 대한 기술적 세부 정보가 궁금하다면 여기에 자세한 내용이 있습니다 .

이 하드웨어는 Apple 컴퓨터에는 존재하지 않았습니다. 사용 가능한 유일한 오디오 출력은 사운드 카드를 통한 것이며 macOS의 유일한 시스템 경고음은 사용자의 경고음입니다.


4
7 년 만에 검색이 끝났습니다 ^^ 인터넷에서 감사합니다. 그러나 나는 여전히 사람들이 질문에 대답하는 모든 창조적 인 방법을 즐깁니다.
elhombre

흥미롭고 재미있는 질문은 아니지만 ...
Ian Dunn

3
@IanDunn 물론-첫 단락과 마지막 단락을주의 깊게 읽으십시오. 문제는 존재하지 않는 것을 요구하는 것입니다.
duskwuff -inactive-

1
아, 맞아, 나는 OP의 질문과 의견을 충분히 읽지 않았고 소프트웨어 나 하드웨어를 통해 왔는지 여부에 관계없이 사운드 자체를 원한다고 생각했다. 내 잘못이야.
Ian Dunn

1
터미널 벨은 90 년대 PC보다 거의 100 년
앞서 있습니다

271

tput bel 대부분의 껍질에서 작동합니다.

OS X에서는 터미널이 포 그라운드에 있지 않을 때 명령이 실행되면이 (그리고 종을 울리는 다른 명령도) 배지를 얻습니다.


35
배경에있을 때 터미널에서 종소리가 울리는 멋진 부작용 (적어도 Lion 터미널에서는)은 문서의 아이콘이 점프하고 완료된 것을 나타내는 빨간색 표시기를 얻는 것입니다. 이것을 시도하십시오 : "sleep 5; tput bel"해당 명령을 실행 한 후 종소리가 울리면 경고음이 울립니다. 내가 찾던 것!
BadPirate

Iterm 사용자 :이 경고음은 들리지만 경고 배지는 만들지 않습니다. (
Eric Hu

4
@EricHu -iTerm2는 이제 이것을 지원합니다 -github.com/gnachman/iTerm2/commit/…
broofa

1
tput많은 옵션을 가진 훌륭한 명령입니다 . 이 명령은 Linux에서도 작동합니다.
Drew Noakes

7
echo -e "\a"OS X에서도 작동하며 더 이식성이
뛰어납니다

139

인쇄 \a가 항상 작동하지는 않았습니다 (MBA, 10.7.4). 대신 이것을 사용합니다 :

say "beep"

유일한 방법은 나를 위해 일했습니다 (OSX 10.8). echo -e "\ a"또는 printf "\ a"둘 다 작동하지 않았습니다.
Valeriy Van

13
와우-거기에 무엇이든 넣을 수 있습니다. 예 : "빌드 완료"
Pete

1
Little Snitch 에서 가장 잘 사용하는 방법 -전체 화면 응용 프로그램을 실행하고 정기적 인 LS 팝업 경고가 표시되지 않으면 경고가 표시 say됩니다 (전체 화면에서만). 즉, 어떤 호스트에 연결하려고 시도한 응용 프로그램 정말 좋아요 얼마 전에 나는 하루 동안 웹 사이트의 변경 사항을 추적해야했기 때문에 화면 앞에 앉아있는 대신 say무슨 일이 일어나고 있는지 알 수있었습니다 (분명히 의미있는 텍스트 만-판매 광고였습니다).
Andrei

@ 랜디 하워드 이것은 정말 재미있는 하나입니다, 감사합니다! 다음은 관심있는 다른 옵션 목록입니다. pastebin.com/raw.php?i=czJ8MVW3
Andrei

7
ㅋ. 실행 : 당신은 그들이 서로의 상단에 두 개의 목소리를 넣어 일을 듣고있는 경우 사람들이 궁금해 할 수 say "Pay attention to me" &say -v Whisper "I own you" &연속을.
Matt

100

실제로 다음은 효과적이고 다소 선율 적입니다.

say -v Bells "dong dong dong"

[업데이트] 불행하게도 Bells는 더 이상 최신 OS X에 포함되어 있지 않습니다.

say -v Victoria Do your homework!

다음을 사용하여 음성을 탐색하십시오.

say -v \?

7
-v Daniel 해리 포터 해리 포터
Madmartigan

1
또는 그냥 : say -v Bells "beep".
kenorb

1
내 최신 macos에는 Beels의 목소리가 없습니다.
Martin

예, 종소리가 제거 된 것 같습니다. say -v '?'모든 음성을 나열하는 데 사용 합니다. say -v '?' | egrep `echo $LANG | sed "s/\..*//"`현재 언어의 음성을 나열하는 데 사용 합니다.
k00ka

56

쓰기 echo ^Gbash는에. 작성하기 ^G를 눌러 ctrl+v다음과 ctrl+g.


20
/usr/bin/printf "\a"osascript -e "beep 1"도 충분히 잘 작동
아베

누구나 무엇 echo ^G을하고 있는지 설명 할 수 있습니까 (즉,이 명령이 평신도의 관점에서 무엇을 말하는가)? 이것은 OSX에 신호음을내는 특수 문자입니까? 다른 관련 특수 문자가 있습니까? @mxhaack @ wongo888
Eric Jones

2
@EricJones ^G는 "제어 문자"입니다. 즉 인쇄 할 수없는 문자로, 예를 들어 벨 / 경고 트리거와 같은 특정 효과를 유발하는 데 사용됩니다. 봐 가지고 이 위키 피 디아 기사
coffeejunk

30

이것은 모든 음성을 반복합니다 (요세미티에서 작동).

say -v '?' | awk '{print $1}' | while read voice; do printf "using $voice...\n"; say -v $voice "hello, this is me using the $voice voice"; sleep 1; done

1
재밌어요, 그런 보물! : D
idleherb

27

터미널 유형에서 :

echo -e "\ a"

-e 매개 변수는 echo가 이스케이프 문자를 처리하도록 지시합니다. \ n은 줄 바꾸기 문자이므로 \ a는 종입니다 (Ctrl + G와 동일).


이 접근 방식의 장점 중 하나는 Linux (및 기타)에서도 작동한다는 것입니다. 다른 곳에서 언급했듯이printf "\a"
rinogo

1
종을 사랑하지만 따옴표에 게으른 사람들을 위해, echo -e \\a또한 작동합니다.
SeldomNeedy

26

와 임의의 경고음을 재생 afplay

아무도 언급하지 않은 것에 놀랐습니다 afplay : 그것은 임의의 사운드 파일을 재생하는 명령 줄 프로그램입니다. OS X 및 메모리가 너무 길면 NeXTSTEP의 최초 릴리스 이후로 사용되었습니다.

예를 들어, 명령 행에서이를 실행하거나 스크립트에 넣을 수 있습니다.

$ afplay /System/Library/Sounds/Ping.aiff

시스템 사운드에만 국한되지는 않습니다. 사용의 한 가지 장점은 afplay자신의 사운드 파일을 경고로 선택할 수 있다는 것입니다. 예를 들어 다음 사운드 파일 중 하나를 다운로드 할 수 있습니다. 하여 좋아하는 을 선택할 수 있습니다.

(텔레타이프 모델 33 벨의 녹음을 찾을 수 있다면 추가 포인트!)


타자기 벨 이 충분히 가까이있을 수 있습니다.
Andriy Makukha

13

OS X 터미널에서 다음 명령을 실행하십시오. osascript -e 'beep'

OSA (Open Script Architecture) 기술을 사용하여 AppleScript에 명령을 실행하도록 지시 beep합니다.


10
printf "\a"

를 보면 다음을 man printf포함하여 이스케이프 된 문자 목록이 표시됩니다 \a.

\a      Write a <bell> character.

7

printf "\a" 또한 터미널에서 작동하며 설정된 경고음을 재생합니다.


7

필요한 것이 있으면 "중요"

당신이 사용할 수있는

tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s && tput bel && sleep 0.33s

:)


1

MacOS X에서는 소리를 얻으려면 "소리 경고"옵션 (터미널 / 환경 설정)을 활성화해야합니다.


1
실제로는 "Audible bell"입니다. 설정 / 고급에 있습니다.
Denis Malinovsky 3


0

XCODE가 설치되어 있다면 경고음 / 벨을 낼 수 있습니다. 나는 printf "\a"C 에서 캐릭터가 작동 하도록 할 수 있다고 생각하지 않았습니다 .

프로그램이 실행될 때 톤이 작동하도록하는 방법이 있습니다. XCODE를 시작하고 XCODE, 기본 설정, 동작 아래의 메뉴를 드롭 다운하고, 첫 번째 상자 PLAY SOUND를 체크하고, 목록에서 선택하거나 사운드를 추가하십시오.

그것은 그것을하는 한 가지 방법이지만 프로그램이 실행될 때만 믿습니다.


1
Xcode "행동"은 해당 이벤트가 Xcode에서 발생할 때만 실행됩니다. 시스템의 다른 곳에는 적용되지 않습니다.
duskwuff-비활성-5

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.