angoca / log4db2

A logging utility like log4j for IBM Db2 SQL PL
https://angoca.github.io/log4db2/
BSD 2-Clause "Simplified" License
7 stars 2 forks source link

Install on Unix like OS assumes bash shell environment #191

Closed dibdotdob closed 2 years ago

dibdotdob commented 9 years ago

Hi Andres, sourcing the install script fails if the current shell isn't bash. I use ksh for my shell, so the install script fails as the "local" function isn't part of ksh. Can the documentation be updated to reflected this. Longer term, a portable script would be better.

angoca commented 9 years ago

I haven't seen this problem before, because I have not real UNIX environments to tests them. I wanted something open for all platforms, and I do not want to depend on bash, because it is not installed by default in AIX (the most popular OS for db2 in prod) How can I get access to an AIX terminal or emulator?

dibdotdob commented 9 years ago

Do you need AIX to replicate the issue? I'm using ksh under Darwin. Try starting a ksh shell and then try installing. This should replicate the issue.

angoca commented 9 years ago

Ok, I will see that at home. Thanks for the advise.

angoca commented 9 years ago

I reproduced the problem in Mac/ksh:

ksh: .: line 83: local: not found ksh: .[84]: eval: line 1: =: not found Please visit the wiki to learn how to use and configure this utility https://github.com/angoca/log4db2/wiki To report an issue or provide feedback, please visit: https://github.com/angoca/log4db2/issues

ksh: .[161]: [: argument expected Check the ERROR(s) and reinstall the utility For more information visit check the FAQs: https://github.com/angoca/log4db2/wiki/FAQs You can also check the install guide: https://github.com/angoca/log4db2/wiki/Install ksh: .: line 182: local: not found ksh: .[183]: eval: line 1: =: not found

However, the installation is correctly performed. I was looking at the code, and I think a global variable will suffice. I do not know why I forced to define a local variable.

angoca commented 2 years ago

Scripts now work with Bash or Korn, first because there is not a shebang at the beginning, and because they do not have any bashism.