有没有办法让R在脚本末尾发出嘟嘟声/播放声音?

有没有办法让R在脚本末尾发出嘟嘟声/播放声音?,r,R,当我运行R脚本时,我会在另一个桌面上执行其他操作。如果我不经常检查,我永远不知道什么时候完成。有没有办法在我的脚本末尾通过一些代码调用一声蜂鸣(比如系统蜂鸣)或让R播放声音或通知咆哮 alarm() 功能。它通过将\a发送到控制台来工作 功能。它的工作原理是将\a发送到控制台,或者如果您使用的是GNU/Linux发行版,并且将pcspkr模块列入黑名单(PC扬声器总是让我恼火),请尝试将系统与一些听觉/视觉通知相结合,例如 system("aplay -t wav /usr/share/sou

当我运行R脚本时,我会在另一个桌面上执行其他操作。如果我不经常检查,我永远不知道什么时候完成。有没有办法在我的脚本末尾通过一些代码调用一声蜂鸣(比如系统蜂鸣)或让R播放声音或通知咆哮

alarm()
功能。它通过将
\a
发送到控制台来工作


功能。它的工作原理是将
\a
发送到控制台

,或者如果您使用的是GNU/Linux发行版,并且将pcspkr模块列入黑名单(PC扬声器总是让我恼火),请尝试将
系统
与一些听觉/视觉通知相结合,例如

system("aplay -t wav /usr/share/sounds/phone.wav") # for auditive bell (an I mean it literary)
system("zenity --title=\"R script info\" --text=\"Script has finished with zero exit status\" --info") # for GTK dialog
如果您喜欢在通知区域发出警报,可以查看zenity手册。。。但是,有了
系统
功能,你几乎可以做任何事情:发送电子邮件、运行其他脚本、重新启动机器、
sudo rm-rf*
等等。任何事情。。。我是认真的


但这只适用于运行GNU/Linux(或UNIX)发行版的情况,否则,请坚持使用Windows特定的命令,尽管在这种情况下,我不能给您提供太多信息…

或者如果您使用GNU/Linux发行版并将pcspkr模块列入黑名单(PC扬声器总是让我恼火),尝试将
系统
与一些听觉/视觉通知相结合,例如

system("aplay -t wav /usr/share/sounds/phone.wav") # for auditive bell (an I mean it literary)
system("zenity --title=\"R script info\" --text=\"Script has finished with zero exit status\" --info") # for GTK dialog
如果您喜欢在通知区域发出警报,可以查看zenity手册。。。但是,有了
系统
功能,你几乎可以做任何事情:发送电子邮件、运行其他脚本、重新启动机器、
sudo rm-rf*
等等。任何事情。。。我是认真的

但这只适用于运行GNU/Linux(或UNIX)发行版的情况,否则,请坚持使用Windows特定的命令,尽管在这种情况下,我不能给您提供太多信息

猫(“你好,世界!\a”)

猫(“你好,世界!\a”)


你应该让它在完成时发出tweet:

你应该让它在完成时发出tweet:

不仅如此,你还可以在程序循环完成时从Youtube上传一些史诗音乐:)(对于Ubuntu/Debian:)


不仅如此,当程序循环完成时,你还可以从Youtube上传一些史诗音乐:)(对于Ubuntu/Debian:)


报警
在我的Windows机器上不起作用,所以我创建了一个确实会发出噪音的函数

beep <- function(n = 3){
    for(i in seq(n)){
        system("rundll32 user32.dll,MessageBeep -1")
        Sys.sleep(.5)
    }
}

beep
报警
在我的Windows机器上不起作用,所以我创建了一个确实会发出噪音的函数

beep <- function(n = 3){
    for(i in seq(n)){
        system("rundll32 user32.dll,MessageBeep -1")
        Sys.sleep(.5)
    }
}

beep请使用
shell.exec(“url”)
在Windows上打开一些YouTube剪辑

请使用
shell.exec(“url”)
在MacOSX上在Windows上打开一些YouTube剪辑你可以让计算机说话:

system("say Just finished!")
您还可以更改将说话的人工语音:

system("say -v Kathy Just finished!")

您可以选择计算机上可用的任何语音。在Yosemite上,您可以看到在系统首选项->听写和语音->文本到语音中安装了哪些语音。

在MacOSX上,您可以让计算机说话:

system("say Just finished!")
您还可以更改将说话的人工语音:

system("say -v Kathy Just finished!")
您可以选择计算机上可用的任何语音。在优胜美地,您可以看到哪些语音安装在系统首选项->听写和语音->文本到语音中。

我有一个软件包(
蜂鸣器)
),其唯一目的是在R中发出通知声音,这应该可以跨平台工作。运行以下步骤安装蜂鸣器并发出声音:

install.packages("beepr")
library(beepr)
beep()
github上的更多信息:

我有一个软件包(
蜂鸣器)
),其唯一目的是在R中发出通知声音,这应该可以跨平台工作。运行以下步骤安装蜂鸣器并发出声音:

install.packages("beepr")
library(beepr)
beep()

github上的更多信息:

蜂鸣器的启发,这是我目前用于解决此类问题的函数:D

work_complete <- function() {
  cat("Work complete. Press esc to sound the fanfare!!!\n")
  on.exit(beepr::beep(3))

  while (TRUE) {
    beepr::beep(4)
    Sys.sleep(1)
  }
}

work\u complete受
beeper
的启发,这是我目前用于解决此类问题的函数:D

work_complete <- function() {
  cat("Work complete. Press esc to sound the fanfare!!!\n")
  on.exit(beepr::beep(3))

  while (TRUE) {
    beepr::beep(4)
    Sys.sleep(1)
  }
}

work\u complete看看这个包:

Pushbullet消息服务的R接口,提供快速 以及计算机之间的高效通知(和文件传输), 手机和平板电脑

RPushbullet是完全免费的多平台产品。至于你的问题,你可以使用这个库向你的浏览器发送推送信息,但显然,当你需要一些东西而不能在你不在的时候通知你时,它会变得很神奇。
此外,R包的创建者与著名的Rcpp相同,Dirk Eddelbuettel。我认为值得一试

看看这个软件包:

Pushbullet消息服务的R接口,提供快速 以及计算机之间的高效通知(和文件传输), 手机和平板电脑

RPushbullet是完全免费的多平台产品。至于你的问题,你可以使用这个库向你的浏览器发送推送信息,但显然,当你需要一些东西而不能在你不在的时候通知你时,它会变得很神奇。 此外,R包的创建者与著名的Rcpp相同,Dirk Eddelbuettel。我认为值得一试

更新:

使用macOS 10.9(Mavericks)及更高版本,您可以使用普通AppleScript发布通知:

theTitle <- "A Title"
theMsg <- "A message here"

cmd <- paste("osascript -e ", "'display notification ", '"', theMsg, '"', ' with title ', '"', theTitle, '"', "'", sep='')
system(cmd)
您可以这样调用函数

notify("R is done", "Message from R", speakIt=TRUE)
要获得这样的消息:

更新:包括@VLC的
say
命令。

更新:

使用macOS 10.9(Mavericks)及更高版本,您可以使用普通AppleScript发布通知:

theTitle <- "A Title"
theMsg <- "A message here"

cmd <- paste("osascript -e ", "'display notification ", '"', theMsg, '"', ' with title ', '"', theTitle, '"', "'", sep='')
system(cmd)
您可以这样调用函数

notify("R is done", "Message from R", speakIt=TRUE)
要获得这样的消息:


更新:包括@VLC的
say
命令。

播放一些音乐怎么样

shell.exec("foo/Born.to.be.wild.mp3")

放点音乐怎么样

shell.exec("foo/Born.to.be.wild.mp3")

您可以使用
notify send
命令:

system("notify-send \"R script finished running\"")

您可以使用
notify send
命令:

system("notify-send \"R script finished running\"")

对于带有GUI和web浏览器的操作系统来说,一些合理的操作系统独立性如何?它甚至可以在RStudio服务器上运行

browseURL('https://www.youtube.com/watch?v=QH2-TGUlwu4')

对于带有GUI和web浏览器的操作系统来说,一些合理的操作系统独立性如何?它甚至可以在RStudi上运行