Copy a file *.m into newly made folder (folder5, folder6, folder....)

15 Ansichten (letzte 30 Tage)
for n = 1:n
mkdir(['folder',sprintf('%d',n)])
end
path1= 'folder(num2str(n))'; %%???? Here I got error for the path name
dos(['copy *.m ', path1])
  8 Kommentare
Rik
Rik am 23 Apr. 2021
Have you read the documentation for sprintf? It should be easy for you to add a second number if you did.
You should also take the advice from Stephen to hart.
Yogesh Bhattarai
Yogesh Bhattarai am 24 Apr. 2021
THANKS for all your good sugestions

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Image Analyst
Image Analyst am 23 Apr. 2021
You should not do this:
for n = 1:n
It's very confusing (even though it works) because it appears that n is both the loop iterator and the ending iteration value and seems to take on two contradictory values. You should do this:
for k = 1 : n
To create a series of folders, do this:
n = 4; % Whatever...
pathList = cell(n, 1); % Preallocate a cell array to contain all the folder names.
for k = 1 : n
% Create the folder name as a character array.
folderName = fullfile(pwd, sprintf('Folder %2.2d', k));
if ~isfolder(folderName)
% Folder does not exist. Need to create it.
mkdir(folderName);
end
pathList{k} = folderName; % Save the folder name in a list.
end
path1= pathList{1}; % Or whatever you want...
path2= pathList{2}; % Or whatever you want...

Weitere Antworten (0)

Kategorien

Mehr zu Debugging and Analysis finden Sie in Help Center und File Exchange

Tags

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by