[英]Ruby change directory in code
因此,我遇到了一個問題,即刪除了我的Ruby腳本正在執行的當前文件夾,例如:
/home/user/scriptfolder
現在,我運行我的紅寶石寶石,我這樣做:
mycommand --deletefull
現在,mycommand是GLI命令,它應該刪除文件夾的內容以及文件夾本身。 我通過使用自定義類來做到這一點:
ClientModuleDir.rm_f(path)
現在刪除它后,我只想做cd ..
但是我嘗試了幾種方法:
system('cd ..')
Dir.chdir(dir) #dir is abs path without the scripfolder name, i've tried every combination with this command, nothing works so far.
但是,這些方法不起作用。
我仍然在
/home/user/scriptfolder
執行完這些命令后,文件夾不存在。 當我手動執行cd ..而我執行ls文件夾不存在時。
如何用ruby代碼“物理地”更改文件夾?
當前工作目錄始終僅保留用於當前程序。 在程序中更改工作目錄不會影響任何其他正在運行的程序,包括其父程序。
因此,當您刪除Ruby腳本中的目錄並向下一級更改Ruby進程的工作目錄時,這不會影響啟動Ruby腳本的Shell進程。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.