For at rydde op i /tmp-mappen uden at påvirke langvarige processer, kan følgende metoder anvendes:
Ja, der findes værktøjer og scripts, der kan kombinere disse betingelser:
find
og lsof
kan bruges til at oprette et script, der opfylder begge betingelser.Eksempel på et script, der kombinerer find
og lsof
:
#!/bin/bash
# Find filer ældre end 7 dage og ikke åbne af nogen processer
find /tmp -type f -mtime +7 -print0 | while IFS= read -r -d '' file; do
if ! lsof "$file" &> /dev/null; then
rm "$file"
fi
done
Ja, Linux/Unix tillader en sådan metode:
O_TMPFILE
flaget, bliver den automatisk slettet, når den sidste filhåndtag lukkes.Eksempel på brug af O_TMPFILE
i C:
#include <fcntl.h>
#include <unistd.h>
int main() {
int fd = open("/tmp", O_TMPFILE | O_RDWR, S_IRUSR | S_IWUSR);
if (fd == -1) {
perror("open");
return 1;
}
// Filen vil blive slettet, når fd lukkes
write(fd, "Hello, World!", 13);
close(fd);
return 0;
}
Ved at bruge disse metoder kan du sikre, at midlertidige filer håndteres korrekt og slettes automatisk, når de ikke længere er nødvendige.
Når du står over for en stor oprydning, kan det være en udfordring at få det gjort sikkert og effektivt. Med Handyhand kan du nemt oprette din oprydningsopgave gratis og få hjælp fra dygtige hænder i dit område. På få minutter modtager du bud fra personer, der er klar til at assistere dig, så du kan få ryddet op uden besvær.