répertoire ensemble de tmpfile () sous Linux
-
21-09-2019 - |
Question
Un programme que j'utilise échoue quand il utilise tmpfile () pour les gros fichiers . Le problème semble être que je n'ai pas la permission de créer des fichiers volumineux dans / tmp, qui cette fonction utilise par défaut. Alors, est-il un moyen, peut-être avec une variable d'environnement, que je peux faire tmpfile () écrire à un autre endroit?
Edit:. Le programme en question est sox , qui utilise C
La solution
Vous pouvez utiliser l'environnement TMPDIR variable pour dire tmpfile () où créer des fichiers:
syntaxe sh:
TMPDIR=/path/to/whatever; export TMPDIR
Syntaxe csh:
setenv TMPDIR /path/to/whatever
Autres conseils
Compte tenu des informations man tmpfile (3)
vous pouvez: #define P_tmpdir "/somedir"
Bien sûr, cela est sans doute pas trop fiable.
Vous pouvez également définir votre variable d'environnement, TMPDIR
à un certain endroit.