Skip to main content

I am trying to run a Shell Script from the System Caller but am running into issues when accessing the various gdal programs that are called from within the script. These are stored away in usr/bin/ and "globally" accessible through the PATH file. The folder where the command is run is generated by FME in earlier steps, so its not as straight forward as copying the gdal files to the folder.

 

Is there some workaround to get this functioning?

I'm not sure if this helps but you can combine calls in a single SystemCaller with '&&'. - The SystemCaller is just a shell really - effectively anything you can do on the shell in a single command you can do with the SystemCaller. 

 

This mean you can do something like:

cd /the/directory/you/want && the-call-you-want-to-make

You can easily test that this works with just using something like the ls command to prove that it works. 


I'm not sure if this helps but you can combine calls in a single SystemCaller with '&&'. - The SystemCaller is just a shell really - effectively anything you can do on the shell in a single command you can do with the SystemCaller. 

 

This mean you can do something like:

cd /the/directory/you/want && the-call-you-want-to-make

You can easily test that this works with just using something like the ls command to prove that it works. 

Thanks @virtualcitymatt​ ,

 

I can run unix commands in the folder from System Caller but unfortunately my shell script still refuses to run. The string I am trying to implement is the one below, the numbers at the end are settings for the shell script. If I run it from Terminal the  it works fine, so the PATH setting is ok. Running various gdal commands works fine from Terminal but wont execute from System Caller. 

 

I have tried prefixing the command with 'bash', './ and 'sh' but that did not help.

The script starts of with a shebang,  '#!/bin/sh'

cd "/Volumes/disk1/test_systemcaller" && myscript.sh 25 5

 


Thanks @virtualcitymatt​ ,

 

I can run unix commands in the folder from System Caller but unfortunately my shell script still refuses to run. The string I am trying to implement is the one below, the numbers at the end are settings for the shell script. If I run it from Terminal the  it works fine, so the PATH setting is ok. Running various gdal commands works fine from Terminal but wont execute from System Caller. 

 

I have tried prefixing the command with 'bash', './ and 'sh' but that did not help.

The script starts of with a shebang,  '#!/bin/sh'

cd "/Volumes/disk1/test_systemcaller" && myscript.sh 25 5

 

Do you get any message about the error anywhere? usually there should be info about why the call isn't running in the log - or at least in the terminal. If you can't find the error then you should be able to pipe the output of the call to a file using this at the end of the call

your-call &> SomeLogFile.txt  

This should give you a few more clues as to why your call isn't running

 


Reply