04-18-2007
variables don't work for inline "su" script
My first post here...
I cannot get variables to work when using inline KSH commands on a "su" command. I have a KSH script, below, that produces my problem:
#!/usr/bin/ksh
su <user_id> <<-END
export FLD1=`echo $PWD`
pwd
echo $FLD1
echo TEST
echo $PWD
END
The script will prompt me for the user's password, and then will display the following:
Password:
/home/jkreife
TEST
/home/jkreife
Notice the "blank" line between my $HOME directory and "TEST". It should have displayed the contents of the FLD1 variable, but does not. My intention is to run a KSH script that loads an Oracle DB using an oracle admin signon, but cannot get variables to work. Can any Unix expert look at this and give me some much needed help?
Thanks!
Joe K.
8 More Discussions You Might Find Interesting
1. OS X (Apple)
hi there, could use some basic PATH advice, i think, or something
find sometimes work, but which hasn't ever seemed to. for years!
what am i doing wrong that the commands which and find rarely work?
they used to work on the workstations i used ages ago...
running 10.5.8 because i... (4 Replies)
Discussion started by: zensnob
4 Replies
2. Shell Programming and Scripting
both ksh/bash support this 2 special variables, Is there any document for reference?
1) "-" is $OLDPWD
2) "$_" is last argument of previous command. (4 Replies)
Discussion started by: honglus
4 Replies
3. Shell Programming and Scripting
Hi, this is my script:
#!/bin/bash
trabajo=$1
numero=`jobs | grep -n $trabajo | cut -d':' -f1`
echo $trabajo
echo $numero
kill %$numero
wait
For some reason,
numero=`jobs | grep -n $trabajo | cut -d':' -f1`
that line wont save in numero the number I am looking for BUT if I write it... (7 Replies)
Discussion started by: lamachejo
7 Replies
4. Shell Programming and Scripting
Hi,
I have line in input file as below:
3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL
My expected output for line in the file must be :
"1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL"
Can someone... (7 Replies)
Discussion started by: shis100
7 Replies
5. Shell Programming and Scripting
In my quest to solve a bigger problem (See my previous post called "Create SQL DML insert statements from file using AWK or similar" - sorry, not allowed to post urls until I have > 5 posts) I'm trying to get my head round awk, but have some problem figuring out why the following script does work... (2 Replies)
Discussion started by: Yagi Uda
2 Replies
6. Shell Programming and Scripting
Hello All,
I have embedded some expect code inside a Bash script I'm writing, but for some reason any variable I 'set' to something is
showing as empty immediately on the next line...
I haven't run into this problem before so I'm not sure what it could be...? I'm guessing it has something to... (4 Replies)
Discussion started by: mrm5102
4 Replies
7. Shell Programming and Scripting
Hello, :)
I've an issue with the creation of a directory, All work without it :mad: So, below, my scripts with the debug output :
#!/bin/bash
# PATHS
HOME_BACKUP="/home/backup"
HOME_SCRIPT="/home/scripts/test/backup_server"
TARGET="/var/www"
# DATE
DATE_Ymd=$(date +%Y-%m-%d)
#... (1 Reply)
Discussion started by: Arnaudh78
1 Replies
8. Shell Programming and Scripting
Hello.
System : opensuse leap 42.3
I have a bash script that build a text file.
I would like the last command doing :
print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt
where :
print_cmd ::= some printing... (1 Reply)
Discussion started by: jcdole
1 Replies
LKSH(1) BSD General Commands Manual LKSH(1)
NAME
lksh -- Legacy Korn shell built on mksh
SYNOPSIS
lksh [-+abCefhiklmnprUuvXx] [-+o opt] [-c string | -s | file [args ...]]
DESCRIPTION
lksh is a command interpreter intended exclusive for running legacy shell scripts. It is built on mksh; refer to its manual page for details
on the scripting language.
LEGACY MODE
lksh has the following differences from mksh:
o lksh is not suitable for use as /bin/sh.
o There is no explicit support for interactive use, nor any command line editing code. Hence, lksh is not suitable as a user's login
shell, either; use mksh instead.
o The KSH_VERSION string identifies lksh as ``LEGACY KSH'' instead of ``MIRBSD KSH''.
o Some mksh specific extensions are missing; specifically, the -T command-line option.
o lksh always uses traditional mode for constructs like:
$ set -- $(getopt ab:c "$@")
$ echo $?
POSIX mandates this to show 0, but traditional mode passes through the errorlevel from the getopt(1) command.
o lksh, unlike AT&T UNIX ksh, does not keep file descriptors > 2 private.
o lksh parses leading-zero numbers as octal (base 8).
o Integers use the host C environment's long type, not int32_t. Unsigned arithmetic is done using unsigned long, not uint32_t. Neither
value limits nor wraparound is guaranteed. Dividing the largest negative number by -1 is Undefined Behaviour (but might work on 32-bit
and 64-bit long types).
o lksh only offers the traditional ten file descriptors to scripts.
SEE ALSO
mksh(1)
https://www.mirbsd.org/mksh.htm
https://www.mirbsd.org/ksh-chan.htm
CAVEATS
lksh tries to make a cross between a legacy bourne/posix compatibl-ish shell and a legacy pdksh-alike but ``legacy'' is not exactly speci-
fied. Parsing numbers with leading zero digits or ``0x'' is relatively recent in all pdksh derivates, but supported here for completeness.
It might make sense to make this a run-time option, but that might also be overkill.
The set built-in command does not have all options one would expect from a full-blown mksh or pdksh.
Talk to the MirOS development team using the mailing list at <miros-mksh@mirbsd.org> or the #!/bin/mksh (or #ksh) IRC channel at
irc.freenode.net (Port 6697 SSL, 6667 unencrypted) if you need any further quirks or assistance, and consider migrating your legacy scripts
to work with mksh instead of requiring lksh.
MirBSD February 11, 2013 MirBSD