Sponsored Content
Top Forums Shell Programming and Scripting AIX UNIX (kshell) to Linux Shell Script Migration. Post 302906305 by Kibou on Wednesday 18th of June 2014 03:30:06 PM
Old 06-18-2014
Quote:
Originally Posted by bakunin
Ahem, this won't work in AIX either. The only place where you can skip the "$" and have the variable expanded anyway is inside double-brackets:

Code:
var=1
(( var = var + 1 ))
print - $var

This is standard ksh and it will definitely work in Linux-ksh as well as in AIX-ksh.
Bakunin, it has just been tested: variables without a preceding $ work in AIX. It works with simple [ ].

We were really surprised about this because we never saw it before. But I am talking about hundreds of scripts written like this for a bank.

At the beginning we thouhgt those scripts didn't work, but after realising that there were hundreds we started to suspect that they actually worked that way.

This is part of the intricacies of the test command, and its peculiar ways.

Quote:
Originally Posted by bakunin
The rule is: the comparison will work, regardless if the variable is quoted or not. The problem one avoids with quoting variables is this: if the variable contains whitespace, the expanded variable will lead to a syntax error once it is expanded, because the shell treats the resulting expanded value as two (or more words):

Code:
typeset var="abc"
if [ $var == abc ] ; then         # this is first expanded to
if [ abc == abc ]  ; then         # which is a legal statement

typeset var="abc def"
if [ $var == abc ] ; then                 # this is first expanded to
if [ abc def == abc ]  ; then             # which is NOT a legal statement, but
if [ "$var" == "abc" ] ; then             # this is first expanded to
if [ "abc def" == "abc" ]  ; then         # which is legal again

You might want to do that because otherwise it would be misleading, but it is not required at all. The OS only cares for the shebang and the executable flag and whcih extension the file has doesn't matter at all.
I know that the only important thing is the shebang. Although it is only a visual matter, to me it looks like something unproperlly finished.. Anyone that sees those scripts without opening them will think that is ksh.
This is my point of view and I explain it like this: if I tell you that I have a friend and my friend's name is Pamela, what would you think? Is it a woman or a man? With the information you have, the name, you suppose that is a girl. I am sure you can "investigate" more and maybe is a boy, but someone with that name looks at first, a girl.

This case is the same, the name is information that could be used to make our life easier, to avoid the need to open the file if the name is self-explicative.

I understand your point though, but I would change the name as well.

I know it is going to be more difficult for the rest of the programs when they have to call the scripts...

Quote:
Originally Posted by bakunin
In AIX "/bin" is a link to "/usr/bin". This is one of my 7.1.3-testsystems:

Code:
# ls -l /bin
lrwxrwxrwx    1 bin      bin               8 Feb  5 09:27 /bin -> /usr/bin

The problem here is that in the scripts from AIX they used something like

Code:
/usr/bin/fuser

so I had to change it into

Code:
/bin/fuser


Quote:
Originally Posted by bakunin
According to the POSIX documents this ("-n <number>") is the modern and suggested form and should be used anyway. If at all the old syntax is only supported for backwards compatibility purposes.

I hope this helps.

bakunin
In the latest version of RHEL it doesn't work without the -n option. I tested it myself.

Regards.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

SCO UNIX to Linux migration

hi all i m working in a company ...and i have to migrate a C application running on SCO-UNIX to Red hat linux. can anybody tell me what is the difference between C commands and shell scripting on SCO-UNIX and LINUX. best regards harsh (3 Replies)
Discussion started by: vickey
3 Replies

2. Shell Programming and Scripting

callint Kshell script from bash default shell

I am trying to set some environment variables in a shell script which is written in Kshell. I am invoking this script in .profile. The problem is envirnment variables are set within the script but after exiting the script those are gone. I don't have any problem with If I have Kshell as my default... (0 Replies)
Discussion started by: roopla
0 Replies

3. UNIX for Advanced & Expert Users

script migration from HP-UX to AIX

Dear All, What points should i keep in mind while migrating scripts from HP-UX to AIX. Are there any notes available for this? cheers, vishal (1 Reply)
Discussion started by: vishal_ranjan
1 Replies

4. UNIX for Advanced & Expert Users

Migration of C Apps from AIX to LINUX

Hi All, I am currently facing new problem of migrating C(c language) application from AIX machine to Linux machine. We are using GCC to compile the source code.. But facing with the compilation issues, with lot of GCC C libs differing between AIX box to Linux box... Pls help me... (1 Reply)
Discussion started by: karthikc
1 Replies

5. Programming

Migration of C Apps from AIX to LINUX

Hi All, I am currently facing new problem of migrating C(c language) application from AIX machine to Linux machine. We are using GCC to compile the source code.. But facing with the compilation issues, with lot of GCC C libs differing between AIX box to Linux box... Pls help me... (1 Reply)
Discussion started by: karthikc
1 Replies

6. Red Hat

Print server Migration from AIX to Linux

Hi, Can anyone help me on migration the print server from AIX to RHEL 4? Appreciate your help? (1 Reply)
Discussion started by: brby07
1 Replies

7. Shell Programming and Scripting

Shell scripts migration from HP-Unix 11 to Red Hat Linux

We are changing our OS from HP-Unix 11 to Linux Red Hat. We have few k- shell, c - shell and sql scripts which are currently running under HP-Unix 11. Will these scripts work on LINUX as it is? or we need to do any code changes?IS there anyone who have done this kind of migration before?Thanks for... (2 Replies)
Discussion started by: Phoenix2
2 Replies

8. Shell Programming and Scripting

UNIX to Linux Migration

We have certain number of scripts that run on AIX server using ksh. Now that we migrate these scripts to Linux servers. We need to know what are the changes that we have to perform in script to make it compatible to run on Linux. Say like in our Unix -AIX "print" command worked. But that did... (6 Replies)
Discussion started by: SIva81
6 Replies

9. AIX

AIX - FC Switch migration, SAN Migration question!

I'm New to AIX / VIOS We're doing a FC switch cutover on an ibm device, connected via SAN. How do I tell if one path to my remote disk is lost? (aix lvm) How do I tell when my link is down on my HBA port? Appreciate your help, very much! (4 Replies)
Discussion started by: BG_JrAdmin
4 Replies

10. Linux

AIX 6.1 to Linux 7.2 migration

Hi, recently we have migrated our current AIX server to Linux, we have lot of shell script, few of them are FTP scripts. we have copied the complete AIX file system to linux 7.2 as it is. could you please highlight what are the things we need to look into it . in AIX we are using .netrc to... (3 Replies)
Discussion started by: Riverstone
3 Replies
All times are GMT -4. The time now is 02:10 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy