#temp-dir #temp #async #content

tmpdir

Useful to create temp directories and copy their contents on completion of some action. Tmp dirs will be created using [env::temp_dir] with some random characters prefixed to prevent a name clash

1 stable release

1.0.0 Feb 24, 2023

#1011 in Filesystem

Download history 201/week @ 2024-03-13 128/week @ 2024-03-20 269/week @ 2024-03-27 179/week @ 2024-04-03 114/week @ 2024-04-10 120/week @ 2024-04-17 100/week @ 2024-04-24 141/week @ 2024-05-01 160/week @ 2024-05-08 172/week @ 2024-05-15 111/week @ 2024-05-22 187/week @ 2024-05-29 121/week @ 2024-06-05 207/week @ 2024-06-12 189/week @ 2024-06-19 260/week @ 2024-06-26

808 downloads per month
Used in 3 crates

MIT license

12KB
164 lines

TmpDir

Useful to create temp directories and copying their contents on completion of some action. Tmp dirs will be created using env::temp_dir with some random characters prefixed to prevent a name clash

copy will traverse recursively through a directory and copy all file contents to some destination dir. It will not follow symlinks.

Example

use tmpdir::TmpDir;
use tokio::{fs, io::AsyncWriteExt};

let tmp = TmpDir::new("foo").await.unwrap();
let new_tmp = TmpDir::new("bar").await.unwrap();

new_tmp.copy(tmp.as_ref()).await;
new_tmp.close().await; // not necessary to explicitly call

lib.rs:

TmpDir

Useful to create temp directories and copying their contents on completion of some action. Tmp dirs will be created using env::temp_dir with some random characters prefixed to prevent a name clash

copy will traverse recursively through a directory and copy all file contents to some destination dir. It will not follow symlinks.

Example

use tmpdir::TmpDir;
use tokio::{fs, io::AsyncWriteExt};

let new_tmp = TmpDir::new("bar").await.unwrap();
new_tmp.copy(tmp.as_ref()).await;
new_tmp.close().await; // not necessary to explicitly call

Dependencies

~3–4.5MB
~71K SLoC