From: ernest <nfdisco@gmail.com>
To: help-gnu-emacs@gnu.org
Subject: Re: shell-command fails to execute shell function
Date: Tue, 11 Jan 2011 07:47:38 -0800 (PST) [thread overview]
Message-ID: <3fb13a41-0117-4b2f-8a10-98af423d19c4@s9g2000vby.googlegroups.com> (raw)
In-Reply-To: mailman.1.1294696768.5286.help-gnu-emacs@gnu.org
On 10 Gen, 22:59, "Steven W. Orr" <ste...@syslang.net> wrote:
> On 1/10/2011 9:40 AM, ernest wrote:
>
> > Hi,
> > I have a shell function defined in ~/.bashrc.
> > When I try to run the function with shell-command, it fails with:
> > /bin/bash: fm: command not found
> > "fm" being the function's name.
> > I suppose I could precede every command with "source ~/.bashr"
> > but I'm sure there must be something more appropriate.
> > Any comment welcome.
> > Ernest
>
> When you log in you run the .bash_profile. If you have a .bashrc then it's the
> responsibility of the .bash_profile to run the .bashrc. If you run a
> non-interactive script which depends on a function which is defined in the
> .bashrc then you will not by default get those functions. If you *really*
> think this is what you want, you need to look at the BASH_ENV variable.
>
> Do not set any env vars in your .bashrc unless you need them for remote
> commands. In that case, your .bashrc should check to see if it is running
> non-interactive and set those very few env vars that you really think you
> need. But, always set them in the .bash_profile.
I thought .bashrc was read when the shell was non-interactive too.
Looks like I was wrong. So, non-interactive shells do not read any
init file, unless you explicitly set the BASH_ENV variable . . . Ok,
thanks!
--
Ernest
prev parent reply other threads:[~2011-01-11 15:47 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-10 14:40 shell-command fails to execute shell function ernest
2011-01-10 21:59 ` Steven W. Orr
2011-01-10 22:11 ` Peter Dyballa
[not found] ` <mailman.1.1294696768.5286.help-gnu-emacs@gnu.org>
2011-01-11 15:47 ` ernest [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3fb13a41-0117-4b2f-8a10-98af423d19c4@s9g2000vby.googlegroups.com \
--to=nfdisco@gmail.com \
--cc=help-gnu-emacs@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.