Я предполагаю, что вы, вероятно, не используете 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 ... но это основная идея.