Windows line komutundan bir ses çalın (belki WAV?)


26

Windows cmd kullanarak nasıl ses çalabilirim (CPU Bip veya wav, ne olduğu önemli değil)?


4
Kullanmak start file.wavkötü bir fikir. Sadece tek bir bip sesi için şişirilmiş bir medya oynatıcısını başlatmak bir saniye sürebilir. Buna ek olarak, dosya dernekler yanlış olabilir, medya oynatıcı dosyasını oynatmak olmayabilir, ya da vb Tekrar tekrar oynamak ve belki basit bir "bip" yazma etmektir yaratma yolunda . "^ G", büyük harf G'nin izlediği çevre aksanı değil , Ctrl + G tuşlarına basarak eklediğiniz özel bir karakterdir. Aslında ASCII değeri 0x07 olan BEL karakteridir. beep ^G
Andreas Rejbrand

Yanıtlar:


-2

Bu olası çözümü test etmek için şimdi pencerelerde değil, ancak şunu deneyin: "başla"

Wav dosyasını, pencerelerinizin ".wav" dosyaları için sahip olduğu ilgili programla açacağını düşünüyorum.

Ve not edin, bu çılgınca bir tahmin - pencereleri olan biri bu işi yapmazsa size daha iyi bir çözüm verebilir


1
Eh, kesinlikle türü ile ilişkili herhangi bir uygulamada dosyayı açacağım, ama bu kadar. Ne yapacağına karar vermek bu uygulamanın görevidir - oynayabilir, bir kuyruğa ya da başka bir şeye ekleyebilir. Dosyayı oynatsa bile, tamamen çaldıktan sonra sona ermemesi muhtemeldir, yani bu muhtemelen kötü bir fikirdir.

Bu çok iyi bir cevap değil!
Antonio

@Antonio,
2010’daydı

Şaşırtıcı, bu kabul edilen, "en iyi cevap" olarak işaretlenir! 😁
Henrik

50

Bunu yerel olarak PowerShell ile yapabilirsiniz. PowerShell, Windows Vista ve sonraki sürümlerinde bulunur ve daha eski sürümler için Microsoft'tan indirilebilir.


Wave dosyaları

PowerShell, System.Media.SoundPlayerbir dalga dosyasını oynatmak için kullanılabilen .NET sınıfını yüklemek için kullanılabilir.

(New-Object Media.SoundPlayer "C:\WINDOWS\Media\notify.wav").Play();

İsterseniz bunu normal komut satırından çalıştırabilirsiniz:

powershell -c (New-Object Media.SoundPlayer "C:\Windows\Media\notify.wav").PlaySync();

( PlaySyncStandart eşzamansız oyunun, böyle başlatıldığında kapanma PowerShell işlemi tarafından kesileceği için ikinci örnekte kullanılana dikkat edin )

Ve sadece ilk 5 saniyelik ses tonunu çalmak istiyorsanız:

powershell -c (New-Object Media.SoundPlayer "C:\Windows\Media\notify.wav").Play(); Start-Sleep -s 5; Exit;

bip

Diğer cevaplarda açıklandığı gibi bir bip sesi normal komut satırında echo ^G(burada ^GBEL, ASCII karakter 7, Ctrl+ ile eklenmiş + ile gösterilir G) ile kolayca gerçekleştirilebilir . Bütünlüğün yararına, işte PowerShell yöntemi:

echo ^G

Evet, aynı olan cmd. echoPowerShell'de, Write-Hostekrana bir şey görüntüleyen (veya durumunda Windows bildirim sesini tetikleyen ) takma addır (yani aynı şeyi ifade eder BEL).

PowerShell'deki alternatif bir yöntem, Ctrl+ ile değişmez bir BEL karakteri eklemek yerine BEL için kaçış dizisini kullanmaktır G:

echo `a

`PowerShell'in kaçış karakteridir, ondan sonra karakterin anlamını değiştirir. Bir kaçan aBEL belirtir. Bu yaklaşımın avantajı, bir senaryoya yazıldığında daha kolay ve daha görünür olmasıdır.

Bunu bir toplu iş dosyasında çalıştırmak için (tekrar, Vista veya sonraki sürümleri):

powershell -c echo `a

kaynak


Yeni wav dosyasını çalıştırmadan önce bu komutu öldürmek ve şu anda wav dosyalarını oynatmak mümkün mü?
Dodd10x,

@ Dodd10x Global ses için kolay değil, hayır. Daha fazla içerik sağlayabilir misiniz? Öldürmek veya duraklatmak niyetinde misiniz? Diğer oyuncu bu komut dosyasının bir başka örneği mi, medya oynatıcısı mı, tarayıcı mı, oyun mu? Aynı betiğin başka bir örneği ise, çok daha basittir (yine de tamamen önemsiz olmasa da).
Bob,

Aynı betiğin başka bir örneği. Önce görev listesine powershell.exe'yi öldürmek için bir çizgi ekleyebileceğimi düşünüyorum.
Dodd10x

@ Dodd10x Önerebileceğim iki yol var. Bunlardan biri PowerShell örneğinin işlem kimliğini almak ve bir dosyaya kaydetmek, ardından yeni bir örneğin başında bu kimliği öldürmek (ve dosyayı silmek). Bu, tüm PS işlemlerini öldürmekten daha güvenlidir. Diğer bir yol ise PowerShell'de bir semafor (bayrak / sinyal) kullanmaktır - semaforun sinyalini verir, Play()(async) kullanır, bir semafor bekler ve kapatırsınız. Semaforlar bunu yapmanın daha temiz bir yoludur, ancak biraz daha karmaşıktır. Sohbette daha fazla ayrıntıya girmekten mutlu olurum .
Bob,

11
echo ^G

Nerede ^Golduğu CTRL + Gveya Alt + 7tuş takımında.


5

Geçici çözüm (bir tür):

1) ses dosyasını çalıştır

2) parça sona erene kadar bekleyin (benim durumumda 5 saniye) ve medya oynatıcısını kapatın

start wmplayer "C:\Windows\Media\Alarm10.wav" && timeout 5 && taskkill /im wmplayer.exe

4

VLC'yi takın. Aşağıdaki komutu kullanın. GERÇEKTEN hızlı bir şekilde başlar. Windows 7'de kullandığım şey b / c wmplayer'ın yüklenmesi çok uzun sürüyor ve / close seçeneği wmplayer'dan kaldırılıyor.

vlc.exe --play-and-exit audio.wav

Ne yazık ki bu ön planda çalışıyor
honzajde

Evet, wmplayer yönteminin yerini alması amaçlanmıştı çünkü yüklenmesi yavaştı ve / close argümanı için destek kaldırıldı. PowerShell yöntemi muhtemelen en iyi bahistir.
Mark Ribau,

1
Başsız VLC çözüm arayanlar, vlc -I dummy --dummy-quiet t.mp3 vlc://quitgelen forum.videolan.org/viewtopic.php?t=79516#p262603
MLM

2

(Eski bir konu iken, insanlar onu bir aramada bulacaktır). Görüyorum ki birileri VLC'yi zaten tavsiye etti. Parametreleri kullanarak görünür bir şey olmadan Windows'da ses çalmak için kullanıyorum: "c: \ Program Files (x86) \ videolan \ vlc \ vlc.exe" --qt-start-minimized --play-and-exit "c: \ Program Dosyaları (x86) \ videolan \ vlc \ Windows Exclamation.wav "

Bir önceki yoruma ek olarak --qt-start-minimizated Yollar ve alıntı karakterleri yalnızca tipik bir kullanım olduğunu göstermek içindir. Bunu XP, 7, 10'da değişmeden kullandım; Vista ve 8.x'in de çalışmasını bekliyorum.


1

Düz bip yolunda ise, değeri 7, sözde karakterin yankı çan karakteri . Ancak, bu bip seslerinin kapatılabileceğini unutmayın.

Başka bir şey istiyorsanız, hile yapan bir uygulama başlatmanız gerekir.


1

Ses dosyasını (veya ses kimliğini) argüman olarak alan ve PlaySound adlı basit bir konsol uygulaması yazabilirsiniz.


1

Çok hafif bir çözüm, Linux ve OS / X üzerinde de çalışan cmndPlayWAV.jar'dır. Hiçbir parametre belirtilmemişse yerleşik bir sese sahiptir veya bir .wav dosyasına tam yolu verebilirsiniz. Bu arada bir kişi, Windows Kaydedici ile kullanmak için her zaman sesli bir mesaj verebilir.


Süper Kullanıcıya Hoşgeldiniz! Lütfen okuyun Yazılım önerisi hakkında nasıl gitmeniz gerektiği hakkında bazı ipuçları için yazılımı nasıl öneririm. En azından bir link, yazılımın kendisi hakkında bazı ek bilgiler ve sorudaki sorunu çözmek için nasıl kullanılabileceğini sağlamalısınız.
DavidPostill

0

XP’de bunu yapıyorum

start /min mplay32 /play /close %WINDIR%\media\tada.wav

İdeal değil ama gerçekten kolay ve çalışıyor.


0

Bunun için kullanıyorum mplayer. Neredeyse herhangi bir medya dosyasını oynayabilir gibi biraz overkill. Son pencereler 2013 itibariyle spirton'da bulunabilir . Örnek kullanım:

mplayer c:\windows\media\chimes.wav

Sen hiç Mplayer.exe eklemek gerekir PATH (bkz YOLU ve diğer çevre değişkenler nedir ve nasıl ayarlayabilir veya bunları kullanmak? Veya kalıcı olarak ekleme komut satırı aracılığıyla sistemin PATH değişkeninin girmesinin? Nasıl bunu yapmak. )


0

Windows terminalinden bir ses dosyasını çalmak için fmedia kullanabilirsiniz :

fmedia file.mp3

Bu komut file.mp3ön planda oynatmaya başlayacak ve dosya oynatmayı bitirdikten sonra sonlandırılacaktır.

Arka planda yapmak istiyorsanız, emrinize --backgroundanahtar ekleyin :

fmedia file.wav --background

Bu komut arka planda yeni bir işlem başlatır ve hemen konsolunuzdan ayırır.

fmedia taşınabilir bir uygulamadır (kurulum olmadan çalışır) ve çok az miktarda sistem kaynağı tüketir. Ayrıca, başlangıç ​​zamanı anlıktır.

PS fmedia.exe --installBunu %PATH%ortam değişkeninize eklemek için komutu kullanın , aksi takdirde örneğin tam yolla uygulamanız gerekir D:\fmedia\fmedia.exe.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.