Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

510
Views
MATLAB getenv no puede encontrar algunas variables de entorno de Linux

Tengo un problema menor: la solución es trivial, pero quería saber por qué existe el problema. Tengo algunas variables de entorno configuradas en .bashrc:

 export FREESURFER_HOME=/usr/local/freesurfer

En mi archivo startup.m, traté de establecer la variable:

 freesurfer_home=getenv('FREESURFER_HOME');

Sin embargo, esta llamada a getenv devuelve una matriz de caracteres vacía. Las llamadas a getenv dentro de MATLAB devuelven algunas variables de entorno (por ejemplo, getenv('HOME')) pero no otras. Puedo ver qué variables de entorno son visibles para MATLAB desde la siguiente línea:

 map = java.lang.System.getenv();

También puedo confirmar que los valores faltantes son visibles, al menos dentro del shell, usando cualquiera de

 export env printenv

¿Hay una explicación para esta discrepancia?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Si verifica el árbol de procesos con el sistema y el comando ps f en Matlab, verá que en realidad inicia sh y ejecuta allí su comando. No tengo Matlab, lo mismo con Octave.

 octave:1> system("ps f") PID TTY STAT TIME COMMAND 2520 pts/0 Ss 0:00 bash 2580 pts/0 Sl+ 0:02 \_ octave 2885 pts/0 S+ 0:00 \_ sh -c ps f 2886 pts/0 R+ 0:00 \_ ps f ans = 0

En este caso, las variables configuradas en .bashrc están disponibles a través de getenv cuando ejecuto octave desde bash. Pero al iniciar Matlab desde el selector de menús, la situación es diferente:

 octave:1> system("ps f") PID TTY STAT TIME COMMAND 3400 pts/2 Ssl+ 0:01 /usr/bin/octave 3444 pts/2 S+ 0:00 \_ sh -c ps f 3445 pts/2 R+ 0:00 \_ ps f

bash no se ha ejecutado y las exportaciones desde .bashrc no están configuradas.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!