Как запустить exe-файл с помощью скрипта оболочки?

Как запустить exe-файл с помощью скрипта оболочки?

У меня есть exe, который принимает 2 .csv файла в качестве входных данных. Как показано ниже:

cSplittinglines.exe srcdir\file.csv destdir\file.csv

Как мне выполнить этот .exe с помощью скрипта оболочки, чтобы каталог, из которого запускается скрипт, не влиял на расположение exe. т.е. избежать жесткого кодирования пути exe. Ниже приведен скрипт, над которым я работаю.

#!/bin/sh
STARTTIME=`date '+%Y%m%d.%H%M%S'`

LOGFILE=${ERRDIR}/${0}.${STARTTIME}

SplitDir=$1

LyxlamDir=$2

echolog ()
{
    echo $*
    echo $* >> ${LOGFILE}
}

    for file in "${SplitDir}"/*; do
    if [ -d "$file" ]; then continue; fi
    extension=${file##*.}

    if [ "$extension" = "csv" ]
    then    
        cSplittingLines.exe "$file" "${LyxlamDir}"
        mv "$file" "${SplitDir}/old"

    fi
done

решение1

Просто поместите exe-файл в $PATH (он для этого и нужен) (%PATH% в Windows)

mv cSplittingLines.exe /bin/

или

echo "export PATH=\"\$PATH:/path/to/exe\"" >> ~/.bashrc

Такжеhttps://www.shellcheck.netсказал;

SC2006: Use $(...) notation instead of legacy backticked `...`.
SC2086: Double quote to prevent globbing and word splitting.

Связанный контент