Я предполагаю, что вы, вероятно, не используете vim
... так что, возможно, это послужит стимулом для его изучения, или, может быть, краткое руководство .....
$ vim *
откроет все файлы;
:!mkdir mine/; mkdir notmine/
создаст каталоги с именами "мой" и "notmine";
:!mv % mine/
переместит текущий файл в каталог с именем "mine";
:bdel
удалит этот файл из тех, с которыми имеет дело vim, и перейдет к следующему;
:!mv % notmine/
переместит текущий файл в каталог с именем "notmine". Что происходит с этими командами перемещения
:
входит в режим командной строки
!
запускает команду оболочки
%
вызывает замену vim в имени текущего файла. Если в имени любого файла есть пробелы, вам нужно будет заключить в кавычки аргумент %
, например :!mv "%" mine/
.
Нажмите :
затем b
, затем стрелку вверх, чтобы снова получить команду :bdel
.
Хит :
тогда !mv
, затем стрелка вверх несколько раз, чтобы перебрать ваш предыдущий !mv ...
команды. Вы также можете просто набрать :!
а затем стрелка вверх, но это получит !mkdir...
команда тоже.
Если вы еще не догадались, стрелка вверх в "режиме командной строки" vim (то, что вы вводите, нажимая :
в "обычном режиме"), заставит его пройти через предыдущие команды, которые начинаются с того, что вы уже набрал там.
Кроме того, в случае, если вы делаете это без какого-либо предыдущего опыта работы с vim, я должен сначала поблагодарить вас за такой смелый шаг, а затем продолжить, чтобы сообщить вам, что если в любой момент вы случайно нажали клавишу на клавиатуре и вы начинаете вводить что-то в файл, или что-то другое неожиданно работает, пару раз <ESC>
, а затем u
чтобы отменить любые изменения, которые вы сделали случайно. Если вы зайдете слишком далеко назад (на самом деле это не проблема для этого примера, поскольку вы не собираетесь изменять какие-либо файлы), вы нажмете <CTRL>-R
чтобы повторить то, что вы просто отменили. <ESC>
выведет вас из режима вставки или визуального режима обратно в обычный режим, где фактически работают все эти команды.
Хорошо ... после того небольшого PSA, вернемся к нашему регулярно запланированному программированию.
Чтобы сделать обработку файлов более эффективной, вы можете настроить несколько макросов:
qm:!mv % mine/<CR>:bdel<CR>q
Это фактически приведет к перемещению текущего файла и удалению его из "списка буферов" vim, поэтому убедитесь, что он один из ваших, когда вы устанавливаете этот макрос. Обратите внимание, что здесь <CR>
означает, что вы нажали клавишу ВВОД в этой точке; на самом деле не печатать <CR>
.
qn:!mv % notmine/<CR>:bdel<CR>q
То же самое здесь.
Затем, чтобы переместить файл в каталог "mine" и перейти в список буферов, вы делаете
@m
Или если это не твое
@n
На самом деле было бы разумнее сопоставить эти макросы с буквами, расположенными на клавиатуре дальше, чем m
и n
... но это основная идея.