Я пытаюсь выполнить цикл файлов в каталоге и выполнять определенные действия над ними. Когда я выполняю скрипт с помощью ksh, он работает так, как ожидалось. Но когда я выполняю его с ./, он терпит неудачу с ошибкой, говорящей слишком много аргументов. Пожалуйста, помогите с этим.Выполнение скрипта оболочки unix с ksh и ./
ScriptName: script1
Когда Exec с ksh Script1 argument1
он работает, как ожидалось. Но когда exec'd с ./Script1 argument1
слишком много ошибок вызывает ошибку.
#!/bin/bash
cd ../SrcFiles
if [ -e *$1* ]
then
for file in *$1*
do
echo $file
if [ $1 == "XXX" ]
then
echo $file >> ABC_"$1".txt
elif [ $1 == "YYY" ]
then
echo $file >> ABC_"$1".txt
else
echo $file >> ABC_"$1".txt
fi
done
else
#createadummyfile
fi
Какой сценарий? Пожалуйста, предоставьте код. – Kellerspeicher
Код добавлен. @Kellerspeicher –
Добавьте 'set -x' для отладки вашего кода. Это может быть, например, расширение параметра '* $ 1 *' работает по-разному в 'ksh' и' bash'. – jofel