2016-06-27 27 views
0

私はループがあり、各反復で繰り返しの名前のディレクトリを作成し、そのフォルダの中にいくつかのファイルをコピーした後、cdをそのフォルダに入れたいのですが、cdにしたいときはMatlab:num2str(#number)という名前のフォルダに 'cd'(ディレクトリを変更)するには?

"cdを使用しているエラー num2str(i)にCDできません(名前は であり、存在しないかディレクトリではありません)。

この問題を解決するにはどうすればよいですか?あなたのコードcd ./num2str(i)

parfor i=1:20000 
    iter=num2str(i); 
    mkdir(iter) 
    copyfile('./mainfolder',iter) 
    cd ./num2str(i) 
    [pow_maxx,FFee,AA33,BB33,shape] = main(i); 
    power_max(i,:)=pow_maxx(1,:); 
    Fe(i,:)=FFee; 
    A3(i,:)=AA33; 
    B3(i,:)=BB33; 
    Shape_all(i,:)=shape(1,:); 
end 
+1

'./num2str(i)'は有効なMatlabではありません。 'cd(['/' num2str(i)])'(あるいは単に 'cd(num2str(i))')のようなものを試してみてください。 – horchler

+0

ありがとうございますこの方法で – Soyol

+0

@horchler私はディレクトリを削除すると同様の問題があります。 1.どのようにして、その名前がstrにnum2str(20)となった番号のディレクトリを削除できますか?以下の どれも働いた: 'RMDIR(num2strは(20));' 'RMDIR( 'num2strは(20)');' 'RMDIR(20);' 'RMDIR('20' )を、 ' 2.' num2str(20) 'という名前のフォルダの内容だけを削除する方法 – Soyol

答えて

0

./num2str(i)はちょうどcd ['./',num2str(i)]を使用し、文字列ではありません。

さらに文字列str1='abc'str2='def'がある場合は、[str1,str2]を使用して連結できます。

関連する問題