-1
A
回答
3
您可以使用shell來修改和重定向程序的輸出:
my_program | tail -n 50 > my_file
使用簡單的重定向>
如果要截斷的文件或雙重定向>>
如果你想將其追加。
注:
此方法僅如果您需要重定向標準錯誤把2>&1
後my_program
1
如果你真的想這樣做,在C++將stdout,你可以通過在線控制檯輸出線存儲在程序運行時將其放入容器中,並在需要時將最後50行寫入文件。
爲您的輸出功能編寫封裝,並且每次將控制檯打印到控制檯時,都將其添加到std::queue
。如果這使得您的隊列大於50個元素,請彈出最老的隊列(只需撥打pop()
)。
class Logger {
static std::queue<string> lastFifty;
public static void log(const std::string& str) {
lastFifty.push(str);
if (lastFifty.size() > 50) {
lastFifty.pop();
}
std::cout << str;
}
public static void dumpToFile(std::ofstream& file) {
while (!lastFifty.empty()) {
file << lastFifty.pop();
}
}
}
相關問題
- 1. 將Ruby控制檯輸出寫入文本文件
- 2. 從java中將控制檯輸出寫入文本文件
- 3. 將控制檯的輸出寫入C#文件?
- 4. Linux將控制檯輸出寫入文件
- 5. 創建將寫入文件或寫入控制檯輸出的通用方法
- 6. 將控制檯線寫入文件
- 7. Ruby - 如何將控制檯輸入寫入文件
- 8. 寫作控制檯輸出
- 9. 如何將最後50行從一個文件寫入另一個文件Python
- 10. 如何將控制檯輸出寫入cpp中的文本文件?
- 11. 在寫入文件後無法在控制檯中寫入
- 12. 如何從定製MSBuild任務將輸出寫入控制檯?
- 13. 如何保持控制檯輸出固定在控制檯的最後一行?
- 14. 將整個控制檯輸出輸出到文本文件
- 15. 將JSON寫入控制檯
- 16. Powershell將程序的輸出寫入控制檯live和管道到文件
- 17. 將客戶機的控制檯輸出寫入服務器中的文件
- 18. bash腳本:使用「script」命令實時將控制檯輸出寫入文件
- 19. 如何只清除python輸出控制檯中的最後一行?
- 20. 捕獲未寫入標準輸出stderr的控制檯輸出?
- 21. 如何將快速彩色輸出寫入控制檯?
- 22. Screeps:將調試輸出寫入控制檯?
- 23. 從控制檯輸出抓取最後n行
- 24. 我如何寫控制檯的最後一行?
- 25. 無法在文本文件中編寫控制檯輸出
- 26. 控制要寫入輸出文件的行數
- 27. log4j2不寫入控制檯和文件
- 28. Java控制檯輸出 - 文件和控制檯BOTH
- 29. C++控制檯自由文本輸入(最大字符大小)
- 30. 只讀大文本文件的最後50行
您可以使用管道尾部。這個問題如何與C++相關? –