Program made for matlab on windows doesn't work on linux. Path problem.
Mostrar comentarios más antiguos
I am trying to use a program on matlab for linux, but it was made for matlab on windows.
The problem is that it tries to work with windows paths over linux.
Warning: Name is nonexistent or not a directory: /ADVISOR2002/advisor.m\saved_vehicles.
As you can see the backslash is the problem.
Any suggestion?
Regards,
Poncho
Respuestas (1)
Walter Roberson
el 12 de Sept. de 2011
0 votos
Edit the program and find where it uses \ as the separator and replace it with / . The program will then be usable on both systems. To say that more explicitly: MS Windows is able to use / as the directory separator as well as the traditional Windows \
In future you can code the separator character using the result of the pathsep() function call, or you can use the fullfile() routine which will automatically use the traditional separator for the system being run on.
5 comentarios
poncho
el 13 de Sept. de 2011
Walter Roberson
el 13 de Sept. de 2011
Depending on what is going on, you may be able to rescue the situation using symbolic links. Perhaps something like
cd /ADVISOR2002
[[ ! -d saved_vehicles ]] && mkdir saved_vehicles
ln -s saved_vehicles advisor.m\\saved_vehicles
Jan
el 13 de Sept. de 2011
@Walter: PATHSEP separates the folders in the PATH string. I assume, you meant FILESEP.
Fangjun Jiang
el 13 de Sept. de 2011
@Walter, I think you meant to use filesep(), not pathsep()
Walter Roberson
el 13 de Sept. de 2011
<rant>
Dang nomenclature! Those '/' or '\' characters are called path separators in POSIX! The string as a whole forms a "file path" in POSIX. TMW should have called it pathifs not pathsep !
</rant>
Categorías
Más información sobre Environment and Settings en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!