MATLAB Answers

How to have function mkdir read a variable?

30 ビュー (過去 30 日間)
Grant Kristo
Grant Kristo 2020 年 12 月 15 日
コメント済み: Grant Kristo 2020 年 12 月 15 日
Can you mass produce sub folders in a parent folder using 'mkdir'and a variable? Can't figure out how have mkdir function read a variable.
Say we try to mass produce folders titled the following numbers:
>> x = [222990, 222991, 222992, 222993, 222994, 222995]
mkdir parentFolder x (doesn't work, just produces a single folder titled x)
mkdir parentFolder "x" (doesn't work, same issue)
mkdir parentFolder 'x' (doesn't work, same issue)
mkdir parentFolder [x] (doesn't work, same issue)
mkdir parentFolder (x) (doesn't work, same issue)
mkdir parentFolder ['x'] (doesn't work, same issue)
mkdir parentFolder ["x"] (doesn't work, same issue)

  2 件のコメント

Stephen Cobeldick
Stephen Cobeldick 2020 年 12 月 15 日
Grant Kristo
Grant Kristo 2020 年 12 月 15 日
Thanks for the link Stephen and furthering Alvery's first note. The link helps me understand "function calls". Starting to put the basics together using MATLAB. Seems the online course I took missed some basics.

サインインしてコメントする。

採用された回答

Alvery
Alvery 2020 年 12 月 15 日
There is another syntactic form for calling functions.
mkdir newfolder
is the same as
mkdir('newfolder')
Since you want to manipulate the folder name, you need to use the second form of the function call, along with string manipulation. There's a second problem. mkdir, unlike many other matlab functions, does not work in a vectorised form. In other words, a single call to mkdir can only create a single folder. So to make one folder per list item, you will need a for loop. Therefore you want something like this:
for fileNum = x
mkdir('parentFolder', ['prefix_' num2str(fileNum)])
end

  1 件のコメント

Grant Kristo
Grant Kristo 2020 年 12 月 15 日
Sick. Thanks Alvery. I'd run into the 'second problem: vectorised forms' using other functions and it's useful to know how to circumvent that. Didn't know there was a second format for entering the info either.

サインインしてコメントする。

その他の回答 (0 件)

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by