Hey guys, since this thread isn't too terribly old, I thought I'd just add to it, since I'm having a similar problem.
I need to do kind of the same thing, only I can't edit the perl file I'm accessing. (Well, I can, but I really shouldn't)
The perl file that I need to get parameters from just contains a bunch of subroutines. Within each subroutine is a list of variables (all the variables' names are the same in the different subroutines, but their values are different)
I need to be able to specify to take x variable from x subroutine, and assign it to x variable in my shell script.
I hope I'm making sense. Actually, now that I look at the file, I'm not even sure they are subroutines. I just need to know how to get the variables in each of these different subroutines into my shell script. The file is below. Any ideas?
Expand|Select|Wrap|Line Numbers
- handle 1 {
- list UG_TS_UT 6 {
- UG_TS_UT {
- UG_TS_UT_TITLE = "Template1";
- UG_TS_UT_HDPATH = "/home";
- UG_TS_UT_SUP = "/usr/bin/keysh";
- UG_TS_UT_PGRP = "ifmisusr";
- UG_TS_UT_ALTSTR = NULL;
- UG_TS_UT_BOOTSU = "NO";
- UG_TS_UT_PWDFSGP = "DFT";
- UG_TS_UT_PWDFSGC = "DFT";
- UG_TS_UT_PWDFSGL = "DFT";
- UG_TS_UT_PWDFUSP = "DFT";
- UG_TS_UT_PWDFERR = "DFT";
- UG_TS_UT_PWDFNUL = "DFT";
- UG_TS_UT_PWDFLEN = -1;
- UG_TS_UT_PGID = 106;
- UG_TS_UT_UIDVAL1 = NULL;
- UG_TS_UT_UIDVAL2 = NULL;
- UG_TS_UT_LOGENV = NULL;
- UG_TS_UT_UIDMETH = 1;
- UG_TS_UT_INCCOM = 1;
- UG_TS_UT_ACCACT = 1;
- UG_TS_UT_ALTTYPE = 1;
- UG_TS_UT_ACCLFTM = -1;
- UG_TS_UT_MAXPOI = -1;
- UG_TS_UT_UNSUCLT = -1;
- UG_TS_UT_PWDAGING = -1;
- UG_TS_UT_PWDTBC = -1;
- UG_TS_UT_PWDEXPT = -1;
- UG_TS_UT_PWDWARN = -1;
- UG_TS_UT_PWDLFTM = -1;
- UG_TS_UT_PWDOPT = -1;
- UG_TS_UT_CRHD = 1;
- UG_TS_UT_PSD = 1;
- };
- UG_TS_UT {
- UG_TS_UT_TITLE = "Template2";
- UG_TS_UT_HDPATH = "/home";
- UG_TS_UT_SUP = "/usr/bin/csh";
- UG_TS_UT_PGRP = "ifmisusr";
- UG_TS_UT_ALTSTR = NULL;
- UG_TS_UT_BOOTSU = "NO";
- UG_TS_UT_PWDFSGP = "DFT";
- UG_TS_UT_PWDFSGC = "DFT";
- UG_TS_UT_PWDFSGL = "DFT";
- UG_TS_UT_PWDFUSP = "DFT";
- UG_TS_UT_PWDFERR = "DFT";
- UG_TS_UT_PWDFNUL = "DFT";
- UG_TS_UT_PWDFLEN = -1;
- UG_TS_UT_PGID = 106;
- UG_TS_UT_UIDVAL1 = NULL;
- UG_TS_UT_UIDVAL2 = NULL;
- UG_TS_UT_LOGENV = NULL;
- UG_TS_UT_UIDMETH = 1;
- UG_TS_UT_INCCOM = 1;
- UG_TS_UT_ACCACT = 1;
- UG_TS_UT_ALTTYPE = 1;
- UG_TS_UT_ACCLFTM = -1;
- UG_TS_UT_MAXPOI = -1;
- UG_TS_UT_UNSUCLT = -1;
- UG_TS_UT_PWDAGING = -1;
- UG_TS_UT_PWDTBC = -1;
- UG_TS_UT_PWDEXPT = -1;
- UG_TS_UT_PWDWARN = -1;
- UG_TS_UT_PWDLFTM = -1;
- UG_TS_UT_PWDOPT = -1;
- UG_TS_UT_CRHD = 1;
- UG_TS_UT_PSD = 1;
- };
- UG_TS_UT {
- UG_TS_UT_TITLE = "Template3";
- UG_TS_UT_HDPATH = "/home";
- UG_TS_UT_SUP = "/usr/bin/keysh";
- UG_TS_UT_PGRP = "dnsc";
- UG_TS_UT_ALTSTR = NULL;
- UG_TS_UT_BOOTSU = "NO";
- UG_TS_UT_PWDFSGP = "DFT";
- UG_TS_UT_PWDFSGC = "DFT";
- UG_TS_UT_PWDFSGL = "DFT";
- UG_TS_UT_PWDFUSP = "DFT";
- UG_TS_UT_PWDFERR = "DFT";
- UG_TS_UT_PWDFNUL = "DFT";
- UG_TS_UT_PWDFLEN = -1;
- UG_TS_UT_PGID = 113;
- UG_TS_UT_UIDVAL1 = NULL;
- UG_TS_UT_UIDVAL2 = NULL;
- UG_TS_UT_LOGENV = NULL;
- UG_TS_UT_UIDMETH = 1;
- UG_TS_UT_INCCOM = 1;
- UG_TS_UT_ACCACT = 1;
- UG_TS_UT_ALTTYPE = 1;
- UG_TS_UT_ACCLFTM = -1;
- UG_TS_UT_MAXPOI = -1;
- UG_TS_UT_UNSUCLT = -1;
- UG_TS_UT_PWDAGING = -1;
- UG_TS_UT_PWDTBC = -1;
- UG_TS_UT_PWDEXPT = -1;
- UG_TS_UT_PWDWARN = -1;
- UG_TS_UT_PWDLFTM = -1;
- UG_TS_UT_PWDOPT = -1;
- UG_TS_UT_CRHD = 1;
- UG_TS_UT_PSD = 1;
- };
- UG_TS_UT {
- UG_TS_UT_TITLE = "Template4";
- UG_TS_UT_HDPATH = "/home";
- UG_TS_UT_SUP = "/usr/bin/csh";
- UG_TS_UT_PGRP = "dnsc";
- UG_TS_UT_ALTSTR = NULL;
- UG_TS_UT_BOOTSU = "NO";
- UG_TS_UT_PWDFSGP = "DFT";
- UG_TS_UT_PWDFSGC = "DFT";
- UG_TS_UT_PWDFSGL = "DFT";
- UG_TS_UT_PWDFUSP = "DFT";
- UG_TS_UT_PWDFERR = "DFT";
- UG_TS_UT_PWDFNUL = "DFT";
- UG_TS_UT_PWDFLEN = -1;
- UG_TS_UT_PGID = 113;
- UG_TS_UT_UIDVAL1 = NULL;
- UG_TS_UT_UIDVAL2 = NULL;
- UG_TS_UT_LOGENV = NULL;
- UG_TS_UT_UIDMETH = 1;
- UG_TS_UT_INCCOM = 1;
- UG_TS_UT_ACCACT = 1;
- UG_TS_UT_ALTTYPE = 1;
- UG_TS_UT_ACCLFTM = -1;
- UG_TS_UT_MAXPOI = -1;
- UG_TS_UT_UNSUCLT = -1;
- UG_TS_UT_PWDAGING = -1;
- UG_TS_UT_PWDTBC = -1;
- UG_TS_UT_PWDEXPT = -1;
- UG_TS_UT_PWDWARN = -1;
- UG_TS_UT_PWDLFTM = -1;
- UG_TS_UT_PWDOPT = -1;
- UG_TS_UT_CRHD = 1;
- UG_TS_UT_PSD = 1;
- };
- UG_TS_UT {
- UG_TS_UT_TITLE = "Template5";
- UG_TS_UT_HDPATH = "/home";
- UG_TS_UT_SUP = "/usr/bin/keysh";
- UG_TS_UT_PGRP = "airforce";
- UG_TS_UT_ALTSTR = NULL;
- UG_TS_UT_BOOTSU = "NO";
- UG_TS_UT_PWDFSGP = "DFT";
- UG_TS_UT_PWDFSGC = "DFT";
- UG_TS_UT_PWDFSGL = "DFT";
- UG_TS_UT_PWDFUSP = "DFT";
- UG_TS_UT_PWDFERR = "DFT";
- UG_TS_UT_PWDFNUL = "DFT";
- UG_TS_UT_PWDFLEN = -1;
- UG_TS_UT_PGID = 111;
- UG_TS_UT_UIDVAL1 = NULL;
- UG_TS_UT_UIDVAL2 = NULL;
- UG_TS_UT_LOGENV = NULL;
- UG_TS_UT_UIDMETH = 1;
- UG_TS_UT_INCCOM = 1;
- UG_TS_UT_ACCACT = 1;
- UG_TS_UT_ALTTYPE = 1;
- UG_TS_UT_ACCLFTM = -1;
- UG_TS_UT_MAXPOI = -1;
- UG_TS_UT_UNSUCLT = -1;
- UG_TS_UT_PWDAGING = -1;
- UG_TS_UT_PWDTBC = -1;
- UG_TS_UT_PWDEXPT = -1;
- UG_TS_UT_PWDWARN = -1;
- UG_TS_UT_PWDLFTM = -1;
- UG_TS_UT_PWDOPT = -1;
- UG_TS_UT_CRHD = 1;
- UG_TS_UT_PSD = 1;
- };
- UG_TS_UT {
- UG_TS_UT_TITLE = "Template6";
- UG_TS_UT_HDPATH = "/home";
- UG_TS_UT_SUP = "/usr/bin/csh";
- UG_TS_UT_PGRP = "airforce";
- UG_TS_UT_ALTSTR = NULL;
- UG_TS_UT_BOOTSU = "NO";
- UG_TS_UT_PWDFSGP = "DFT";
- UG_TS_UT_PWDFSGC = "DFT";
- UG_TS_UT_PWDFSGL = "DFT";
- UG_TS_UT_PWDFUSP = "DFT";
- UG_TS_UT_PWDFERR = "DFT";
- UG_TS_UT_PWDFNUL = "DFT";
- UG_TS_UT_PWDFLEN = -1;
- UG_TS_UT_PGID = 111;
- UG_TS_UT_UIDVAL1 = NULL;
- UG_TS_UT_UIDVAL2 = NULL;
- UG_TS_UT_LOGENV = NULL;
- UG_TS_UT_UIDMETH = 1;
- UG_TS_UT_INCCOM = 1;
- UG_TS_UT_ACCACT = 1;
- UG_TS_UT_ALTTYPE = 1;
- UG_TS_UT_ACCLFTM = -1;
- UG_TS_UT_MAXPOI = -1;
- UG_TS_UT_UNSUCLT = -1;
- UG_TS_UT_PWDAGING = -1;
- UG_TS_UT_PWDTBC = -1;
- UG_TS_UT_PWDEXPT = -1;
- UG_TS_UT_PWDWARN = -1;
- UG_TS_UT_PWDLFTM = -1;
- UG_TS_UT_PWDOPT = -1;
- UG_TS_UT_CRHD = 1;
- UG_TS_UT_PSD = 1;
- };
- };
- };