如何在不终止R会话的情况下停止API请求结果的持续打印?
不用等打印结束!这里有几个快速解决方法
首先,你的locations变量已经稳稳存在本地环境里了,当前的打印只是后续的输出流程,完全不用等它跑完就能操作数据、处理其他任务。试试下面的办法:
1. 立即保存数据到文件(最优先做)
不管控制台还在不在刷输出,直接在R控制台输入保存命令,把数据持久化到文件里——这是最关键的一步,做完就算之后出问题也不怕丢数据:
- 保存为CSV(适合后续用Excel、Python等工具打开):
# 先把列表转成数据框再保存 locations_df <- data.frame(address = unlist(locations)) write.csv(locations_df, "geocoded_addresses.csv", row.names = FALSE) - 保存为R专属格式(完美保留列表结构,后续导入R更方便):
saveRDS(locations, "geocoded_locations.rds")
输入命令后按回车,R会优先执行保存操作,不用等打印流结束。
2. 终止打印输出,释放控制台
如果打印流一直占着控制台影响操作,你可以把输出重定向到空设备,让后续打印直接“消失”:
针对你的EC2 Linux环境,执行这条命令即可:
sink("/dev/null")
执行后控制台会立刻停止刷输出,你就能正常输入其他命令处理任务了。
3. 绝对不要直接关闭EC2/RStudio Server实例!
除非你已经把locations保存到文件里,否则关闭实例会直接丢失环境里的变量。现在请求已经完成,数据就在环境里,先做上面的保存步骤,之后想怎么操作都没问题。
内容的提问来源于stack exchange,提问作者goollan
相关产品推荐
相关产品推荐

