#author("2019-01-06T19:13:14+09:00","default:Miyashita","Miyashita")
#author("2019-01-06T19:24:02+09:00","default:Miyashita","Miyashita")
* Filesystem 関係メモ [#ga596770]
大体は公式ドキュメントの [[Base.Filesystem>https://docs.julialang.org/en/v1/base/file/index.html]] に書いてあるのでそれを基本に.

** ls 的なやつ [#de10f6ef]
readdir()を使う.()の中はディレクトリ名.
#codeprettify(lang-julia){{
julia> readdir("/home/miyashita/.julia")
11-element Array{String,1}:
 ".cache"
 "clones"
 "compiled"
 "conda"
 "environments"
 "lib"
 "logs"
 "packages"
 "prefs"
 "registries"
 "v0.6"
}}

** cd, mv, rm 的なやつ [#h1b5bf71]
juliaでもそのまま cd, mv, rm として使える.ただし,~
#codeprettify(lang-julia){{
# 下記の操作はエラーを返します
rm.("*.png")
run(`rm *.png`)
}}
のようなことはできないので,ファイルの一括削除をするときは一手間必要.~
#codeprettify(lang-julia){{
# readdir()得たファイル名の中から .png のつくファイルを抽出
rm.(filter(x->occursin(".png",x), readdir()))
}}
カレントでないディレクトリの場合は,filterで抽出したあとにディレクトリ名を追加する.
#codeprettify(lang-julia){{
# filterした結果にディレクトリ名を追加
rmfile = joinpath.(dirname, filter(x->occursin(".png",x), readdir(dirname)))
# 対象ファイル(ここでは*.png) 一括削除
rm.(rmfile)
}}

**ファイルやディレクトリがあるか確認 [#n10a1816]
#codeprettify(lang-julia){{
isfile(filename) # true or false
isdir(dirname)
}}

Front page   Edit Diff Attach Copy Rename Reload   New List of pages Search Recent changes   Help   RSS of recent changes