在当前目录中给出一个文本文件“ hello.jl”:
" Example hello world program."
function hello()
println("hello, world")
end
您如何将此显示给Julia 1.0.0 REPL?
这是我到目前为止所拥有的:
julia> disp(f) = for line in readlines(open(f)); println(line); end
disp (generic function with 1 method)
julia> disp("hello.jl")
" Example hello world program."
function hello()
println("hello, world")
end
在Julia中是否有内置命令可以执行此操作?
答案 0 :(得分:3)
在Linux中,您可以使用run
函数并将其传递给Cmd
参数,以运行cat
系统命令。
键入分号;
,以更改为 shell 模式:
shell> cat hello.jl
"Example hello world program."
function hello()
println("hello, world")
end
使用run
函数在Julia之外执行命令:
julia> run(`cat hello.jl`) # Only works on Unix like systems.
"Example hello world program."
function hello()
println("hello, world")
end
Process(`cat hello.jl`, ProcessExited(0))
在Windows中,type
命令应类似于Unix cat
:
julia> show_file(path::AbstractString) = run(@static Sys.isunix() ? `cat $path` : `type $path`)
show_file (generic function with 1 method)
run
返回Process
对象:
julia> show_file("hello.jl")
"Example hello world program."
function hello()
println("hello, world")
end
Process(`cat hello.jl`, ProcessExited(0))
在行的末尾使用分号;
,以抑制REPL中的返回输出:
julia> show_file("hello.jl");
"Example hello world program."
function hello()
println("hello, world")
end
或者您可以根据需要在nothing
的末尾返回show_file
。
答案 1 :(得分:2)
在朱莉娅REPL中,点击
;
进入REPL的内置shell模式,然后
shell> head path/to/my/filename
答案 2 :(得分:2)
println(String(read("hello.jl")))
或
"hello.jl" |> read |> String |> println