Nunca precisei do comando move nativo do ranger para poder usar o comando mv na linha de comando do ranger, para mover o arquivo ou diretório selecionado para um determinado diretório, por exemplo:
shell -f mv %f /foo/bar
onde %f é a macro do ranger para arquivos destacados, e %s seria para todos os selecionados.
A opção -f bifurca a operação para que a sessão do ranger não seja interrompida por um longo processo de arquivo.
Você pode invocar a linha de comando com s! ou @.
Outra maneira, especialmente se você tiver muitas cópias / movimentos para fazer, é abrir outra guia no ranger, com gn e cd para o diretório para o qual deseja copiar / mover os arquivos. Em seguida, retorne à primeira guia para selecionar arquivos e use a macro ranger para a próxima guia %D , para mover os arquivos para, por exemplo,
shell -f mv %f %D
Mas isso na verdade apenas evita que você atinja yy Tab dd Tab . Para ser honesto, eu geralmente troco a guia e dd .
Eu configurei as associações de teclas no arquivo rc.conf assim,
#sync sel'd into dir on next tab
map ytt shell -f rsync -rult %s %D
#sync sel'd from dir on next tab
map yff shell -f rsync -rult %S %d
#sync sel'd into dir on next tab :incl referred files
map ytr shell -f rsync -ruLt %s %D
#sync sel'd from dir on next tab :incl referred files
map yfr shell -f rsync -ruLt %S %d
#move sel'd into dir on next tab
map dtt shell -f mv %s %D
#move sel'd from dir on next tab
map dff shell -f mv %S %d
Observe que %S é a macro dos arquivos selecionados na próxima guia.
%d é a macro para o caminho do diretório da guia atual.
E alguns outros,
#copy sel'd into h'd dir
map pc shell -f rsync -rut %s %d/%f/
#move sel'd into h'd dir
map pm shell -f mv -u %s %d/%f
#copy buffer into h'd dir
map pds shell -f rsync -rult %c %d/%f/
#move buffer into h'd dir
map pdm shell -f mv -u %c %d/%f
#sync buffer'd files into curr dir :links only
map ps shell -f rsync -rult %c %d
Onde %c é a macro ranger para arquivos mantidos no buffer de cópia / corte.
Os arquivos são facilmente adicionados ao buffer com yy , para serem puxados ou ya , para serem adicionados ao buffer de cópia. Da mesma forma, com dd , para cortar ou da , para adicionar ao buffer de corte.
Veja meus outros mapeamentos de chaves aqui