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

230
Views
Configuración y paso de variable de cadena en el script de trabajo de SLURM

Tengo un script de trabajo SLURM de la siguiente manera:

 #!/bin/bash #SBATCH -o ./out/%x.%j.%N.out #SBATCH -e ./out/%x.%j.%N.err #SBATCH -D ./ #SBATCH -J matlab_serial_batch_job #SBATCH --nodes=1 #SBATCH --tasks-per-node=1 #SBATCH --cpus-per-task=1 #SBATCH --time=0:30:00 module load slurm_setup module load matlab/R2021a-generic NROWA=1000 NCOLA=2000 NROWB=2000 NCOLB=5000 MYSTRING='blablabla' # Run MATLAB matlab -nodisplay -singleCompThread \ -r "matmul_serial([$NROWA $NCOLA], [$NROWB $NCOLB], $MYSTRING);"

Como puede ver, me gustaría configurar y pasar una variable de cadena llamada MYSTRING a la función matmul_serial de MATLAB. Sin embargo, recibí el siguiente error:

 Unrecognized function or variable 'blablabla'

Para esas variables enteras NROWA , NROWB , NCOLA y NCOLB , funcionan bastante bien. ¿Cómo configuro y paso correctamente la variable de cadena MYSTRING en este contexto?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

En realidad, Bash eliminará las comillas simples durante la tarea.

 ❯ MYSTRING='blablabla' ❯ echo $MYSTRING blablabla

Puedes intentar escapar de las comillas de esta manera:

 ❯ MYSTRING=\'blablabla\' ❯ echo $MYSTRING 'blablabla'

De lo contrario, Matlab cree erróneamente que blablabla es el nombre de una variable o una función y no un literal de cadena. Sin embargo, el mensaje de error es engañoso, ya que agrega una comilla simple alrededor de blablabla . Pero esas comillas simples no son las que insertó en la asignación MYSTRING=... , como se muestra a continuación en una sesión interactiva de Matlab.

 $ matlab MATLAB is selecting SOFTWARE OPENGL rendering. < MATLAB (R) > Copyright 1984-2019 The MathWorks, Inc. R2019a (9.6.0.1072779) 64-bit (glnxa64) March 8, 2019 To get started, type doc. For product information, visit www.mathworks.com. >> blablabla Undefined function or variable 'blablabla'.
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!