Как перемещать каталоги в Ranger?

Я использую файловый менеджер Ranger.

Я хочу переместить выбранное (mark ред) каталоги по указанному пути.

Я перемещал каталоги, используя dd а также pp но он требует, чтобы пользователь пошел в каталог назначения, чтобы "вставить" их в.

Там нет документов move команда, которую я не знаю, как использовать.

И я также думаю, что это может быть сделано с помощью внешней команды оболочки, но я хочу сделать это через move команда.

3 ответа

Я никогда не нуждался в родном рейнджере move команда с возможностью использовать mv команда в командной строке ranger, чтобы переместить выбранный файл или каталог в заданный каталог, например:

shell -f mv %f /foo/bar

где %f является макросом рейнджера для выделенных файлов, и %s будет для всех выбранных.

Опция -f разветвляет операцию, чтобы сеанс рейнджера не прерывался длинным файловым процессом.

Вы можете вызвать командную строку с s,! или же @.

Другой способ, особенно если вам нужно сделать много копий / ходов, это открыть еще одну вкладку в рейнджере с gn и перейдите в каталог, в который вы хотите скопировать / переместить файлы. Затем вернитесь на первую вкладку, чтобы выбрать файлы и используйте макрос рейнджера для следующей вкладки. %D, чтобы переместить файлы, например,

shell -f mv %f %D

Но это на самом деле только спасает вас от удара yy Tab dd Tab, Честно говоря, я обычно переключаю вкладку и dd,

Я установил привязки клавиш в файле rc.conf следующим образом:

#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      

Обратите внимание, что %S макрос для выбранных файлов на следующей вкладке.%d это макрос для пути к каталогу текущей вкладки.

И некоторые другие,

#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  

куда %c макрос рейнджера для файлов, хранящихся в буфере копирования / вырезания

Файлы легко добавляются в буфер yy, чтобы дернуть, или ya, чтобы добавить в буфер копирования. Точно так же с dd, чтобы вырезать, или da, чтобы добавить в вырезанный буфер.

Смотрите мои другие раскладки клавиш здесь

Это старый вопрос, но это первый вопрос, который я нашел, когда начал использовать Ranger.

Мозерелла упоминает.

Файлы легко добавляются в буфер с помощью yy, yank или ya для добавления в буфер копирования. Аналогично, с dd, чтобы вырезать, или da, чтобы добавить в буфер вырезания.

Я не знаю, было ли это возможно для каталогов в конце 2016 года, но я нашел метод:

  1. дд на каталог - вырезать
  2. перейти в новый каталог
  3. pp - Вставить

относится и к каталогам.

Хотя первый ответ чертовски хорош с точки зрения прохождения некоторых более глубоких частей соответствующих конфигураций RC-файлов, лучше просто добраться до этой чертовой точки.

Допустим, вы пытаетесь скопировать и вставить каталог на удаленный сервер. Все, что вам нужно сделать, это убедиться, что вы являетесь пользователем root (при необходимости, например: в моем случае я просто хотел переместить мою папку public_html, содержащую мой веб-сайт, глубже в каталог /var, поэтому мне нужно было быть пользователем root) с:

sudo su

(* введите свои учетные данные)

Затем используйте Ranger:

ranger

Выберите каталог и введите:

dd

Затем перейдите в нужное место и введите:

pp

Вуаля, вы сделали!

Другие вопросы по тегам