переименовать пакетные файлы (удалить некоторые символы в именах) (python / matlab / shell) - PullRequest
0 голосов
/ 31 января 2019

Я хочу переименовать множество файлов в папке.Все файлы начинаются с tr_+number+samp_+missing symbols

С:

tr_000_samp_833f.bin
tr_001_samp_889f.bin
tr_002_samp_12f0.bin
tr_003_samp_320v.bin

До:

tr_000_samp.bin
tr_001_samp.bin
tr_002_samp.bin
tr_003_samp.bin

Любой язык в порядке.MATLAB, Python C ++ или оболочки.Спасибо тебе большое!

1 Ответ

0 голосов
/ 31 января 2019

Я предполагаю, что имена имеют фиксированную длину и предоставляет шаги Matlab.

Сначала получите список файлов в папке:

dirc = dir();

Теперь получите только имена, соответствующиенекоторые критерии:

rename_list = {};
for ii=1:length(dirc)
  if(~isempty(strfind(dirc(ii).name,'tr_')) &&...
     ~isempty(strfind(dirc(ii).name,'samp_')) &&...
     ~isempty(strfind(dirc(ii).name,'.bin')))

Скопируйте файл с новым именем:

       name = dirc(ii).name;
       copyfile(name,name([1:11,end-3,end])

Удалить старый файл (если вам нужно, и если вы достаточно смелы)

       delete(name)

Закройте петли:

   end
end
...