From bash to regexp, step 2 AIX to Linux
Last month, I posted https://blogs.sap.com/2016/10/14/old-unix-shell-code-may-never-die/
concerning preparing to move shell scripts from one OS to another. As the SAP Community site was newly migrated, it was a bit of a rush. The primary tag was not optimal, as Linux showed up as Oracle Linux, not Suse or RedHat, The tag soup seems a bit more seasoned now, though that’s a topic for a rant, not this space.
Before returning to the office after attending an ASUG conference on BI/Analytics and a road trip, I peeked at my email and found our target Linux application server was almost ready for use. Accounts were set up, passwords distributed, and some fire-walled network connectivity done. Once through the mountain of pending replies and actions, I started my discovery. Turns out I was wrong about ksh availability on this Linux.
$ ls -l /usr/bin/ksh lrwxrwxrwx 1 root root 10 Jan 29 2015 /usr/bin/ksh -> /bin/ksh93 $ ls -l /bin/ksh* lrwxrwxrwx 1 root root 10 Jan 29 2015 /bin/ksh -> /bin/ksh93 -rwxr-xr-x 1 root root 38280 Dec 3 2014 /bin/ksh93 $ man ksh93 No manual entry for ksh93
As far executables being in /bin or /usr/bin, let’s not go there.
During this initial research, I began a list of available programs and libraries, and there are a lot. I guess the “move it all to the database” plan hasn’t descended to this distro yet. The few utilities I might have use for (assuming I needed to spend any further time at the OS level) that I did not find included Emacs and lynx. I won’t go into the others I found that probably don’t belong on an Enterprise OS other than noting this rant-and-flame-war from Jamie Zawinski on one of his more famous releases XScreenSaver (maybe not-safe-for-work): https://www.jwz.org/blog/2016/04/i-would-like-debian-to-stop-shipping-xscreensaver/
One old chestnut I noted was xli [ https://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/graphics/xli/README.html ] [ listed home page is dead ] used to view images inside an X Window display. Still works, after all these years!
Now to the end-of-week dead end. I installed an enterprise scheduler client to verify library compatibility and set the stage for upcoming unit and regression tests. This worked flawlessly, much to my relief, as the deviations among Linux flavors can be tricky. After tweaking some missing DNS values (hosts only for now), I ran the basic job we call “generic”. If that works, we can move ahead. If not, time for debug. All good so far.
Next, I added a vendor supplied simulated business process workflow job that exercises the building blocks of the automation tool, including file watchers and sendevents. I needed to set up security rules for my temporary ID, set the $PATH, and then watched the flows complete with green lights. Great.
Not so fast. When I looked at the directory for the sample code to find where to change $DISPLAY to the correct X Window, I got lower case files when I should only see initial upper case.
$ ls [A-Z]*x DBarchive.x DBdump.x DBupdate.x DoSally.x FWwindow.x mf.window.x SAcleanup.x DBdistribute.x DBreports.x DoBob.x ex.window.x MFfilter.x SAbackup.x SAstatusreport.x
This is what I expect to see:
$ ls [A-Z]*x DBarchive.x DBdump.x DBupdate.x DoSally.x MFfilter.x SAcleanup.x DBdistribute.x DBreports.x DoBob.x FWwindow.x SAbackup.x SAstatusreport.x
(output slightly reformatted for word press).
More to come!