Python

如何編寫遊俠腳本通過python將文件複製到另一個目錄

  • September 22, 2018

ranger是一個可以用python擴展的命令行文件管理器。該commands.py文件包含內置命令的範例:

https://github.com/ranger/ranger/blob/master/ranger/config/commands.py

我可以看到如何刪除文件,self.fm.delete()並且我已經瀏覽了該fm.py文件,但沒有看到一個看起來暴露的函式,它可以讓我以簡單的方式複製文件(但我不是 python 開發人員,所以也許我不知道)不明白):

https://github.com/ranger/ranger/blob/master/ranger/core/fm.py

我只想要一個將復製current selection~/.directory/.

我知道我可以使用鍵映射來做到這一點,但我想在 python 中做到這一點,以便我可以擴展它,但我無法超越這一個基本步驟。

Welp …這就是我最終得到的,但我不確定是否有更好的方法:

class cpto(Command):                                   
   """:cpto                                           

   copies the file to a special directory                      
   """                                                 
   def execute(self):                                               
       self.fm.execute_console("shell cp %s ~/.special_directory &")

我能夠通過複製 ranger 儲存庫,進入其中並執行來fm更深入地探索該對象cd``pydoc.ranger.core.actions

您可以通過在rc.conf文件中創建映射來獲得相同的功能,如下所示:

map cto shell -f cp %s ~/.special_directory/

然後,您將選擇需要複製的文件,然後按cto

引用自:https://unix.stackexchange.com/questions/338941