Definir diretório de tmpfile () no Linux
-
21-09-2019 - |
Pergunta
Um programa que eu uso está falhando quando usa tmpfile () Para arquivos grandes. O problema parece ser que não tenho permissão para criar arquivos grandes em /tmp, que essa função usa por padrão. Então, existe uma maneira, talvez com uma variável ambiental, que eu possa fazer com que o tmpfile () escreva em um local diferente?
Editar: o programa em questão é Sox, que usa C.
Solução
Você pode usar a variável de ambiente tmpdir para dizer a tmpfile () onde criar arquivos:
Sintaxe SH:
TMPDIR=/path/to/whatever; export TMPDIR
Sintaxe CSH:
setenv TMPDIR /path/to/whatever
Outras dicas
Dada a informação em man tmpfile (3)
você pode querer: #define P_tmpdir "/somedir"
Claro, isso provavelmente não é muito confiável.
Você também pode definir sua variável ambiental, TMPDIR
para algum local.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow