I can't do much more right now, but it looks like you can use switches like --rc-file
, or --profile,
etc.
man bash
...
If bash is invoked with the name sh, it tries to mimic the startup
behavior of
historical versions of sh as closely as possible, while conforming to the POSIX
standard as well. When invoked as an interactive login shell, or a non-interac‐
tive shell with the --login option, it first attempts to read and execute com‐
mands from /etc/profile and ~/.profile, in that order. The --noprofile option
may be used to inhibit this behavior. When invoked as an interactive shell with
the name sh, bash looks for the variable ENV, expands its value if it is defined,
and uses the expanded value as the name of a file to read and execute. Since a
shell invoked as sh does not attempt to read and execute commands from any other
startup files, the --rcfile option has no effect. A non-interactive shell
invoked with the name sh does not attempt to read any other startup files. When
invoked as sh, bash enters posix mode after the startup files are read.
When bash is started in posix mode, as with the --posix command line option, it
follows the POSIX standard for startup files. In this mode, interactive shells
expand the ENV variable and commands are read and executed from the file whose
name is the expanded value. No other startup files are read.
$(set)
. – mikeserv Apr 16 '14 at 18:16nsenter ... 5<<IN\nparam=val ; ${param=$name}=val...\nIN\n ;
and the fd would be available to you in the namespace. So you couldset -- $(cat <&5)
or even. /dev/fd/5
at any time. You could use the shell's.dot
with any file as well. – mikeserv Apr 16 '14 at 19:04nsenter ... ENV=./env_script sh -i
– mikeserv Apr 16 '14 at 19:12ENV
seems on track but I don't fully understand – Dane O'Connor Apr 16 '14 at 20:44sudo
thannsenter
(if that is what you are using). Maybe you want to usesudo -E
or set upenv_keep
in/etc/sudoers
. – Graeme Apr 16 '14 at 21:18nsenter … env -i VAR1=VALUE1 … bash
? – Gilles 'SO- stop being evil' Apr 16 '14 at 22:47fn() ( nsenter ... ) 5<<DEFS\n${param=thing}\nDEFS\nparam=nothing fn
– mikeserv Apr 17 '14 at 05:15