1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
use std::process::Command;
/// returns the current datetime as String
pub fn now() -> String {
let output = if cfg!(windows) {
Command::new("cmd")
.args(["/C", "echo %date:~0,10% %time%"])
.output()
.expect("failed to execute a process to get current time")
} else {
Command::new("date")
.args(["+%Y/%m/%d %T"])
.output()
.expect("failed to execute process to get current time")
};
String::from_utf8_lossy(&output.stdout[..])
.trim_end()
.to_string()
}