Cómo hacer que el hardware emita un pitido en Mac OS X 10.6


174

Solo quiero que Mac OS X 10.6 emita un pitido de hardware como en suse abierto y otras distribuciones. Traté de seguir enfoques

Terminal -> pitido = -bash: pitido: comando no encontrado

Terminal -> decir bip = la voz habla bip (no es un bip de hardware pero es impresionante;))

AppleScript -> pitido = campana de Macintosh (¡quiero un pitido de hardware!)

¿Alguien sabe cómo hacer sonar el hardware en bin / bash o applecript?


3
@elhombre, ¿qué te hace pensar que Mac OS X puede hacer tal cosa?
Carl Norum

19
Intente: diga "bip" si no encuentra nada, lo más cerca que se me ocurre.
Patrik Björklund

30
@Patrik - +1, bien. printf "\a"emite un pitido del sistema operativo, si eso ayuda.
Carl Norum

9
@Carsten: una Mac es una PC. PC = computadora personal. Simplemente no es una PC IBM (compatible).
Paul R

2
Un MAC basado en Intel es una PC compatible con IBM
Nathan Garabedian

Respuestas:


24

No hay "pitido de hardware" en macOS.

La funcionalidad en la que está pensando es un artefacto de hardware muy antiguo (anterior a la década de 1990) compatible con PC de IBM. Antes de que la mayoría de las computadoras tuvieran tarjetas de sonido, la mayoría de las máquinas tenían un pequeño altavoz o zumbador piezoeléctrico conectado a uno de los canales de un chip temporizador. Esto podría usarse para generar tonos simples o pitidos. Incluso después de que muchas computadoras integraran tarjetas de sonido, siguió siendo común durante bastante tiempo que las computadoras enrutaran esta salida a un altavoz interno separado. Más recientemente, muchas computadoras, especialmente las portátiles, han integrado esta funcionalidad en la tarjeta de sonido integrada.

(Si tiene curiosidad sobre los detalles técnicos de cómo funciona la interfaz de altavoz de la PC, aquí encontrará más detalles ).

Este hardware nunca ha existido en las computadoras Apple. La única salida de audio disponible es a través de la tarjeta de sonido, y el único pitido del sistema en macOS es el sonido de alerta del usuario.


44
Después de 7 años, la búsqueda llegó a su fin ^^ Gracias Dog en Internet. Pero todavía disfruto de todas las formas creativas en que las personas responden la pregunta, ¡así que sigan viniendo!
elhombre

Esa es una curiosidad interesante, pero en realidad no responde la pregunta ...
Ian Dunn

3
@IanDunn Claro que sí, lea el primer y el último párrafo detenidamente. La pregunta es pedir algo que no existe.
duskwuff -inactive-

1
Ah, tienes razón, no leí la pregunta y los comentarios del OP lo suficientemente cerca, y pensé que solo querían el sonido en sí, independientemente de si venía a través de software o hardware. Culpa mía.
Ian Dunn

1
La campana de la terminal es anterior a la PC de los años 90 por casi 100 años: en.wikipedia.org/wiki/Bell_character
kwerle

271

tput bel Funciona en la mayoría de los depósitos.

En OS X, este (y cualquier otro comando que haga sonar la campana) también le da una insignia si el comando se ejecuta cuando Terminal no estaba en primer plano:


35
El efecto secundario impresionante (al menos en la terminal Lion) de que suene una campana en su terminal cuando está en segundo plano es que el ícono en el documento salta, y obtiene un indicador rojo que dice que se ha completado algo. Pruebe esto: "sleep 5; tput bel" ejecute ese comando y luego salga de la terminal, cuando suena la campana, recibe una alerta. ¡Justo lo que estaba buscando!
BadPirate

Usuarios de Iterm: esto emite un pitido, pero no crea la insignia de alerta :(
Eric Hu

44
@EricHu -iTerm2 ahora es compatible con esto - github.com/gnachman/iTerm2/commit/…
broofa

1
tputEs un gran comando con muchas opciones . Este comando también funciona en Linux.
Drew Noakes

77
echo -e "\a"también funciona en OS X y probablemente sea más portátil
wap26

139

La impresión \ano siempre funcionó para mí (MBA, 10.7.4). Yo uso esto en su lugar:

say "beep"

la única forma que funcionó para mí (OSX 10.8). Ni echo -e "\ a" ni printf "\ a" no funcionaron.
Valeriy Van

13
Wow - puedes poner cualquier cosa allí, por ejemplo: decir "construcción completada"
Pete

1
El mejor uso de él lo veo en Little Snitch : cuando ejecuto una aplicación de pantalla completa y no veo advertencias emergentes de LS, saysoy yo (solo en pantalla completa), es decir, qué aplicación se ha bloqueado al intentar conectarse a algún host. Muy agradable. Hace algún tiempo necesitaba rastrear los cambios en un sitio web durante un día, así que en lugar de sentarme frente a mi pantalla, solía saydecirme lo que estaba sucediendo (obviamente solo texto significativo, esos eran anuncios de venta).
Andrei

@RandyHoward Esta es realmente divertida, ¡gracias! Aquí hay una lista de otras opciones si alguien está interesado: pastebin.com/raw.php?i=czJ8MVW3
Andrei

77
Jaja. Puede hacer que las personas se pregunten si están escuchando cosas al poner dos voces una encima de la otra: Ejecutar say "Pay attention to me" &y say -v Whisper "I own you" &consecutivamente.
Matt

100

De hecho, lo siguiente es efectivo y algo melódico:

say -v Bells "dong dong dong"

[Actualización] Desafortunadamente, Bells ya no está incluido en el último OS X. Pruebe:

say -v Victoria Do your homework!

Use lo siguiente para explorar voces:

say -v \?

77
decir -v Daniel harry potter harry potter
Madmartigan

1
O simplemente: say -v Bells "beep".
kenorb

1
No es la voz de Beels en mis macos actualizados.
Martin

Sí, Bells parece haber sido eliminado. Use say -v '?'para enumerar todas las voces. Use say -v '?' | egrep `echo $LANG | sed "s/\..*//"`para enumerar voces para su idioma actual.
k00ka

56

escribe echo ^Gen la fiesta. para crear la ^Gprensa ctrl+vy luego ctrl+g.


20
/usr/bin/printf "\a"y osascript -e "beep 1"también el trabajo lo suficientemente bien
abe

¿Alguien puede explicar lo que echo ^Gestá haciendo (es decir, qué dice este comando en términos simples)? ¿Es este un personaje especial que le emite un pitido a OSX? ¿Hay otros caracteres especiales relacionados? @mxhaack @ wongo888
Eric Jones

2
@EricJones ^Ges un "carácter de control", es decir, un carácter no imprimible que se utilizó / se usó para causar un cierto efecto, como por ejemplo, activar la campana / pitido. Tener vistazo a este artículo de Wikipedia
coffeejunk

30

Esto recorrerá todas las voces (funciona en Yosemite):

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
Hilarante, ¡qué tesoro! : D
idleherb

27

En el tipo de terminal:

echo -e "\ a"

El parámetro -e le dice a echo que procese los caracteres escapados. Como \ n es el nuevo carácter de línea, \ a es la campana (igual que Ctrl + G).


Una ventaja de este enfoque es que también funciona en Linux (¿y otros?). Como se mencionó en otra parte, también puede intentarloprintf "\a"
rinogo

1
Para aquellos que aman la campana pero son flojos con las citas, echo -e \\atambién funciona.
SeldomNeedy

26

Reproduce un sonido de alerta arbitrario con afplay

Me sorprende que nadie haya mencionado afplay: ese es el programa de línea de comandos que reproduce archivos de sonido arbitrarios. Ha existido desde los lanzamientos originales de OS X (y NeXTSTEP, si su memoria es tan larga).

Por ejemplo, puede ejecutar esto desde la línea de comandos o ponerlo en un script:

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

No estás limitado a los sonidos del sistema; Una ventaja de usar afplayes que puede elegir su propio archivo de sonido como alerta. Por ejemplo, puede descargar uno de estos archivos de sonido y elegir su favorito.

(¡Puntos extra si puede encontrar una grabación de un timbre de Teletype Model 33!)


La campana de la máquina de escribir podría estar lo suficientemente cerca.
Andriy Makukha

13

En terminales OS X, ejecute el comando: osascript -e 'beep'

Usando la tecnología OSA (Open Script Architecture) para decirle a AppleScript que ejecute el comando beep.


10
printf "\a"

Si observa man printf, le proporciona una lista de caracteres escapados, que incluyen \a:

\a      Write a <bell> character.

7

printf "\a" también funciona en una terminal y reproducirá el sonido de alerta establecido.


7

Si necesitas algo, eso suena como "importante"

puedes usar

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

en MacOS X, la opción de "advertencia de sonido" (Terminal / Preferencias) debe activarse para obtener un sonido.


1
En realidad se llama "campana audible". Está en Configuración / Avanzado.
Denis Malinovsky


0

Si tiene instalado XCODE, puede hacer un pitido / campana. No me he imaginado que puedo hacer que el printf "\a"personaje funcione en C.

Hay una manera de hacer que el tono funcione mientras se ejecuta el programa, iniciar XCODE, desplegar el menú en XCODE, Preferencias, Comportamientos, marcar la primera casilla REPRODUCIR SONIDO, elegir de la lista o agregar un sonido.

Esa es una forma de hacerlo, pero solo mientras el programa se ejecuta, creo.


1
Los "comportamientos" de Xcode solo se ejecutan cuando los eventos correspondientes ocurren en Xcode. No se aplican en ninguna otra parte del sistema.
duskwuff -inactive-

0

osascript -e 'tell application "System Events" pitar

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.