无论如何,有没有要重置Julia中的当前工作目录?

时间:2019-12-24 20:04:27

标签: directory julia

假设当前工作目录为import time import random from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.by import By driver = webdriver.Firefox() driver.get("https://www.omegle.com/") time.sleep(random.randint(2, 5)) driver.execute_script("window.scrollTo(0, document.body.scrollHeight);") time.sleep(random.randint(1, 5)) button = driver.find_element(By.XPATH, "//span[@class='topicplaceholder']") button.click() button.send_keys("panda") button.send_keys(Keys.RETURN) (保存.jl文件的目录),然后将cwd切换到某些子文件夹以执行某些任务。 之后,是否可以将cwd直接重置回def add_slide(prs, layout, title): """Return slide newly added to `prs` using `layout` and having `title`.""" slide = prs.slides.add_slide(layout) slide.shapes.title.text = title return slide title_slide_layout = prs.slide_layouts[1] slide = add_slide(prs, title_slide_layout, "Summary Table") slide2 = add_slide(prs, title_slide_layout, "New Table") slide3 = add_slide(prs, title_slide_layout, "Old Table") ,即初始cwd?或者,是否有其他方法可以定位正在运行的.jl文件所在的目录,而与当前工作目录无关? (无需将cwd预先保存为变量)

3 个答案:

答案 0 :(得分:6)

您可以将do keywordcd函数一起使用。

这会将工作目录更改为/some/path,允许您执行一些工作,然后在end关键字之后自动返回到原始工作目录。

cd("/some/path") do
   pwd() # or do some other work here
end

答案 1 :(得分:4)

@__DIR__宏提供了当前脚本所在的目录。

答案 2 :(得分:1)

尽管我也建议遵循@David Varela的do语法建议,但是如果您确实想知道julia二进制文件最初的起始位置,则可以(至少)在POSIX系统上找到它在ENV["PWD"]中:

julia> pwd()
"/Users/nathan.daly"

julia> cd("Downloads")

julia> pwd()
"/Users/nathan.daly/Downloads"

julia> ENV["PWD"]
"/Users/nathan.daly"