Size: a a a

2020 December 03

?

? in pro.lua
А подскажи ещё пожалуйста, в среде есть функция определения пути до исполняемого файла
источник

S

Snusmumriken in pro.lua
О, нашёл внезапный прекол.
Если сделать просто os.rename("c:/bla.txt", "blabla.txt"), то оно переместит в current working directory, то есть куда-нибудь в мои документы или ещё куда-то.
источник

?

? in pro.lua
scriptPath()
источник

?

? in pro.lua
А как из него вернуться на директорию выше?
источник

?

? in pro.lua
scriptPath()..'\'
источник

?

? in pro.lua
Так вроде?
источник

S

Snusmumriken in pro.lua
В луях, если запускаешь скрипт в интерпретаторе, путь до текущего скрипта — arg[0].
Путь до директории выше —
local sep = package.config:sub(1, 1) -- \ или /
local scrpath = arg[0]
local scrdir, scrname = scrpath:match("(.*)[\\/](.*)")
local updir = scrdir .. sep .. ".."

Во, по красоте.
источник

?

? in pro.lua
local sep = package.config:sub(1, 1) -- \ или /
local scrpath = scriptPath()
local scrdir, scrname = scrpath:match("(.*)\\/")
local updir = scrdir .. sep .. ".."


print(updir)
источник

?

? in pro.lua
источник

?

? in pro.lua
Неа, не то
источник

S

Snusmumriken in pro.lua
Нет, как раз то ))
Это путь
/sdcard
источник

S

Snusmumriken in pro.lua
/cdcard/test/.. == /cdcard
источник

S

Snusmumriken in pro.lua
Две точки — универсальный подъём наверх во всех популярных ОС.
/my/path/../directory/foo/../bar
это
/my/directory/bar
источник

?

? in pro.lua
А тут вот походу нет
источник

?

? in pro.lua
Я так понимаю тут lua 5.1 еще
источник

S

Snusmumriken in pro.lua
Оно мало изменилось.
источник

?

? in pro.lua
print(scriptPath())
источник

?

? in pro.lua
источник

?

? in pro.lua
тоже самое ток с делителем
источник

S

Snusmumriken in pro.lua
Разделитель это такое дело, что как правило, лучше его добавлять исключительно вручную.
То есть, путь до директории — всегда без разделителя, а ля
/path/to/directory
И когда мы вытаскиваем файл, мы такие дописываем
file = dir .. "/file.txt"

Вместо /path/to/directory; file = dir .. "file.txt",
Потому что некоторые штуки могут воспринимать разделитель на конце пути к директории как попытку доступа к файлу с пустым именем.
источник