Acesta este semnalul sonor de comandă care poate fi rulat în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS
PROGRAM:
NUME
bip - bip difuzorul computerului în orice număr de moduri
REZUMAT
beep [--verbos | --debug] [-e dispozitiv | --dispozitiv dispozitiv] [-f N] [-l N] [-r N] [-d N] [-D
N] [-s] [-c]
beep [ OPȚIUNI ] [-n] [--nou] [ OPȚIUNI ]
beep [-h] [--help]
beep [-v] [-V] [--versiune]
DESCRIERE
beep permite utilizatorului să controleze difuzorul computerului cu precizie, permițând sunete diferite
pentru a indica diferite evenimente. Deși poate fi rulat destul de fericit pe linia de comandă, este
locul de reședință prevăzut este în scripturile shell/perl, notificând utilizatorul când
se întâmplă ceva interesant. Desigur, nu are idee despre ceea ce este interesant, dar este
foarte bun la acea parte de notificare.
Toate opțiunile au valori implicite, ceea ce înseamnă că doar tastând „beep' va functiona. Dacă o opțiune
este specificat de mai multe ori pe linia de comandă, opțiunile ulterioare le înlocuiesc
predecesorii. Asa de 'beep -f 200 -f 300' va suna la 300Hz.
OPŢIUNI
--verbos, --depanare
activați ieșirea de depanare. Această opțiune tipărește o linie ca următoarea înainte de fiecare bip:
[DEBUG] De 5 ori 200 ms bipuri (100 de întârziere între, 0 întârziere după) @ 1000.00 Hz
-e dispozitiv, --dispozitiv dispozitiv
utilizați dispozitivul ca dispozitiv pentru evenimente. Dacă comutatorul nu este utilizat, /dev/tty0 și /dev/vc/0 sunt
încercat pe rând.
-f N bip la N Hz, unde 0 < N < 20000. Ca o stație generală, terminalul obișnuit
bip este în jur de 750 Hz. N nu este, de altfel, limitat la numere întregi.
-l N bip timp de N milisecunde.
-r N specificați numărul de repetări (implicit la 1).
-d N, -D N
specificați o întârziere de N milisecunde între repetări. Utilizarea lui -d specifică faptul că
această întârziere ar trebui să apară numai între bipuri, adică nu ar trebui să apară după
ultima repetare. -D indică faptul că întârzierea ar trebui să apară după fiecare repetare,
inclusiv ultimul. În mod normal, -d este ceea ce vrei, dar dacă, de exemplu, ești
înşiră mai multe beep comandă împreună pentru a cânta imnul Star Wars, poate doriți
control asupra fiecărei întârzieri.
-n, --nou
această opțiune vă permite să divizați linia de comandă în specificarea mai multor bipuri.
De fiecare dată când această opțiune este utilizată, bip începe să trateze toate argumentele ulterioare ca și cum
erau pentru un nou bip. Deci de exemplu:
beep -f 1000 -n -f 2000 -n -f 1500
ar produce o secvență de trei bipuri, primul cu o frecvență de 1000 Hz (și
în caz contrar, valorile implicite), apoi un al doilea semnal sonor cu o frecvență de 2000 Hz (din nou,
cu lucruri precum întârzierea și repetările fiind setate la valorile implicite), apoi un al treilea bip, la
1500 Hz. Acest lucru este diferit de specificarea unei valori -r, deoarece -r se repetă la fel
bip de mai multe ori, în timp ce -n vă permite să specificați semnale sonore diferite. După un -n,
noul bip este creat cu toate valorile implicite și oricare dintre acestea poate fi
specificat fără modificarea valorilor pentru bipurile precedente (sau ulterioare). Vezi EXEMPLE
secțiunea dacă acest lucru a reușit să vă încurce.
-s, -c aceste opțiuni puse beep în modul de procesare a intrărilor. -s spune beep de citit din
stdin și bip după fiecare linie nouă și -c îi spune să facă acest lucru după fiecare caracter.
În ambele cazuri, programul va ecou și intrarea înapoi la stdout, ceea ce face
este ușor să alunece beep într-o conductă de procesare a textului, consultați EXEMPLE secţiune.
-h, --Ajutor
afișați informațiile de utilizare și ieșiți
-v, -V, --versiune
afișați informații despre versiune și ieșiți
EXEMPLE
Cel mai simplu (dar încă eficient)
beep
O configurație independentă mai interesantă
beep -f 300.7 -r 2 -d 100 -l 400
Ca parte a unei conducte de urmărire a buștenilor
tail -f /var/log/xferlog | grep --line-buffered passwd | \
beep -f 1000 -r 5 -s
Când utilizați modul -c, vă recomand să folosiți un -D scurt și un -l mai scurt, astfel încât să sune
nu estompați împreună. Ceva de genul ăsta îți va aduce un bip în stil anilor 1970, pe măsură ce
efect de tip-fiecare-litera
fisier pisica | beep -c -f 400 -D 50 -l 10
Un exemplu foarte artificial de utilizare -n/--nouă
beep -f 1000 -r 2 -n -r 5 -l 10 --nou
va produce primele două bipuri de 1000 Hz, apoi 5 bipuri la tonul implicit, dar numai
10 ms fiecare, urmat de un al treilea bip folosind toate setările implicite (din moment ce niciunul
sunt specificate).
IOCTL NECESARE
Unii utilizatori se vor confrunta cu o situație în care beep-ul moare cu o plângere de la ioctl(). The
Motivul pentru aceasta, după cum Peter Tirsek a fost destul de drăguț să-mi sublinieze, provine din modul în care
nucleul se ocupă de încercarea beep-ului de a trage la (pentru non-programatori: ioctl este un fel de catch-
toate funcțiile care vă permit să vă uitați la lucruri care nu au niciun alt tip predefinit
mecanism) tty, care este modul în care emite bipurile. Povestea scurtă este că nucleul verifică asta
fie:
- tu ești superutilizatorul
- dețineți telefonul actual
Ceea ce înseamnă asta este că root poate întotdeauna să facă bip-ul să funcționeze (din câte știu!) și
că orice utilizator local poate face bip-ul să funcționeze, DAR un utilizator de la distanță non-root nu poate folosi beep-ul în el
stare naturală. Ce este mai rău, un xterm sau o altă sesiune x contează, în măsura în care este nucleul
în cauză, ca „la distanță”, deci beep-ul nu va funcționa nici de la un xterm neprivilegiat. am avut
inițial am atribuit asta la o eroare, dar de fapt nu pot face nimic în privința asta și
Este într-adevăr un lucru bun că nucleul face lucrurile în acest fel. Există și o soluție.
În mod implicit, beep-ul nu este instalat cu suid bit setat, pentru că ar fi ciudat.
Pe de altă parte, dacă îl faci suid root, toate problemele tale cu bip-ul vor continua
Apelurile ioctl vor dispărea magic, ceea ce este plăcut, iar singurul motiv pentru a nu face acest lucru este că
orice program suid este o posibilă gaură de securitate. În mod convenabil, beep-ul este foarte scurt, deci
auditarea este destul de simplă.
Decideți singuri, desigur, dar mi se pare sigur - există doar un tampon și
fgets nu îl lasă să depășească, există doar un fișier care se deschide și, în timp ce există un
condiție potențială de cursă acolo, este cu /dev/console. Dacă cineva poate exploata această rasă
prin înlocuirea /dev/console, ai probleme mai mari. :)
Deci soluția rapidă, singura și probabil sigură dacă bip-ul nu emite atunci când doriți este
(ca rădăcină):
# chmod 4755 /usr/bin/beep
(sau oriunde ai pune-o)
Singura problemă este că acest lucru îi va oferi oricărui mic ticălos capacitatea de a rula bip cu succes
- asigura-te ca asta iti doresti. Dacă nu este, o remediere puțin mai complexă ar fi
ceva asemănător cu:
# chgrp beep /usr/bin/beep
# chmod 4750 /usr/bin/beep
și apoi adăugați numai utilizatori demni de bip la grupul „beep”.
FRECVENȚĂ TABEL
Mai multe persoane au cerut ajutor de bază pentru a traduce note muzicale în frecvențe.
Există o mulțime de note muzicale și mai multe tabele online vă vor oferi traduceri, dar
aici sunt aproximativ numere pentru octava lui C mijlociu, pentru a începe.
Notă Frecvența
C 261.6
C # 277.2
D 293.7
D# 311.1
E 329.6
F 349.2
F# 370.0
G 392.0
G# 415.3
A 440.0
A# 466.2
B 493.9
C 523.2
Utilizați bip online folosind serviciile onworks.net