Рейтинг@Mail.ru

Far: как поменять TMP?

Большинство программ Windows считывает переменные среды, а именно путь к папке Temp из переменных окружения среды.


Я перенес все папки temp юзерские и системные в одну на диск C:\Temp Так удобнее чистить. Однако есть проблема – Far Manager точно также складывает туда временные файлы. Залупа в том, что я часто открываю Far текстовые файлы внутри запароленных архивов с ценной инфой. Так вот, после закрытия просмотрщика эти файлы так и остаются в папке temp, т.е. чисто теоретически туда можно залезть и найти эти файлы незапаролеными. Проблема решается очень просто. Я использую портативный Far, который считывает папку профиля из директории внутри фара. Поэтому в Far\Profile\Macros\scripts\ создаем файл _macroinit.lua Это скрипт на языке LUA, который выполняется сразу после старта фара. В этом файле можно прописать вот такие команды
win.SetEnv(“TEMP”, win.GetEnv(‘FARHOME’)..’\\tmp’)
win.SetEnv(“TMP”, win.GetEnv(‘FARHOME’)..’\\tmp’)

тогда temp и tmp папки будут внутри директории с фаром, что удобно для портативки. Также можно явно указать темповую папку, например на зашифрованном разделе
win.SetEnv(“TEMP”, ‘k:\\tmp’)
win.SetEnv(“TMP”, ‘k:\\tmp’)

Теперь фар будет игнорировать системные настройки tmp temp в окружении среды, и использовать эти. Все программы запущенные из фара тоже будут считывать этот путь, а не прописанный в системных переменных среды.
Только обязательно прописывайте двойной слеш \\ иначе работать не будет.

Leave a Comment