proxmox-backup/pbs-tools/src/cli.rs
Wolfgang Bumiller e5f9b7f79e split out proxmox-backup-debug binary
and introduce pbs_tools::cli module

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-08-31 14:45:48 +02:00

14 lines
430 B
Rust

use std::fs::File;
use std::io::{self, stdout, Write};
use std::path::Path;
/// Returns either a new file, if a path is given, or stdout, if no path is given.
pub fn outfile_or_stdout<P: AsRef<Path>>(path: Option<P>) -> io::Result<Box<dyn Write>> {
if let Some(path) = path {
let f = File::create(path)?;
Ok(Box::new(f) as Box<dyn Write>)
} else {
Ok(Box::new(stdout()) as Box<dyn Write>)
}
}