Muéstrenos más partes del script y díganos qué comandos tuvo que ejecutar individualmente y desea simplemente.
Mientras tanto, debe usar comillas dobles, no comillas simples para expandir las variables:
export PATH="/home/linux/Practise/linux-devkit/bin/:$PATH"
Los puntos y comas al final de un solo comando tampoco son necesarios.
Hasta aquí:
#!/bin/sh
echo "Perform Operation in su mode"
export ARCH=arm
echo "Export ARCH=arm Executed"
export PATH="/home/linux/Practise/linux-devkit/bin/:$PATH"
echo "Export path done"
export CROSS_COMPILE='/home/linux/Practise/linux-devkit/bin/arm-arago-linux-gnueabi-'
echo "Export CROSS_COMPILE done"
...
Porque supuedes ejecutarlo con:
su -c 'sh /path/to/script.sh'
Nota: El OP no pedía explícitamente pasos sobre cómo crear variables de exportación en un shell interactivo utilizando un script de shell. Solo pidió que se evaluara su guión como máximo. No mencionó detalles sobre cómo se usaría su guión. Pudo haber sido usando .o sourcedesde el shell interactivo. Podría haber sido un scipt independiente o podría haber sido tomado sourcede otro guión. Las variables de entorno no son específicas de los shells interactivos. Esta respuesta resolvió su problema.