From owner-freebsd-questions@FreeBSD.ORG Thu Sep 27 06:52:36 2012 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4663C106566B for ; Thu, 27 Sep 2012 06:52:36 +0000 (UTC) (envelope-from freebsd@dreamchaser.org) Received: from nightmare.dreamchaser.org (nightmare.dreamchaser.org [12.32.44.142]) by mx1.freebsd.org (Postfix) with ESMTP id E283F8FC12 for ; Thu, 27 Sep 2012 06:52:35 +0000 (UTC) Received: from breakaway.dreamchaser.org (breakaway.dreamchaser.org. [12.32.36.73]) by nightmare.dreamchaser.org (8.13.6/8.13.6) with ESMTP id q8R6qZM2070376; Thu, 27 Sep 2012 00:52:35 -0600 (MDT) (envelope-from freebsd@dreamchaser.org) Message-ID: <5063F7AD.6000705@dreamchaser.org> Date: Thu, 27 Sep 2012 00:52:29 -0600 From: Gary Aitken User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:13.0) Gecko/20120609 Thunderbird/13.0 MIME-Version: 1.0 To: Polytropon References: <5063DF4B.1060904@dreamchaser.org> <20120927072227.9f57fff0.freebsd@edvax.de> In-Reply-To: <20120927072227.9f57fff0.freebsd@edvax.de> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.0.2 (nightmare.dreamchaser.org [12.32.36.65]); Thu, 27 Sep 2012 00:52:35 -0600 (MDT) Cc: FreeBSD Mailing List Subject: Re: trouble getting .shrc to take X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: freebsd@dreamchaser.org List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 Sep 2012 06:52:36 -0000 On 09/26/12 23:22, Polytropon wrote: > On Wed, 26 Sep 2012 23:08:27 -0600, Gary Aitken wrote: >> Having set my shell to either sh or bash, >> I can't seem to get .shrc to take. >> If I have a .shrc that looks like: >> >> PROMPT_DIRTRIM=3; export PROMPT_DIRTRIM >> PS1=\\w$ ; export PS1 >> >> PS1 is not defined when I log in, and the prompt is set to the default instead. >> >> If I do >> ./.shrc >> nothing seems to change; >> although executing the above commands from the shell itself works. >> >> What am I missing? > > As far as I see from "man sh", the system's shell does not > support PROMPT_DIRTRIM, so it's a bash feature. Didn't realize that, thanks. And apparently I lied; using sh does cause .shrc to be used, but not when bash is used. > According to "man bash", its initialisation file is called > ~/.bashrc. For example, if I put > > export PS1="\u@\h:\w\$ " > > into ~/.bashrc and execute bash, I get a standard prompt. So > it should only be a matter of the correct file name. > Note that bash has several files it can process at startup > time, such as .bash_login, .profile and .bashrc. Their order > is described in the manual, e. g. > > When bash is invoked as an interactive login shell, or as a non-inter- > active shell with the --login option, it first reads and executes com- > mands from the file /etc/profile, if that file exists. After reading > that file, it looks for ~/.bash_profile, ~/.bash_login, and ~/.profile, > in that order, and reads and executes commands from the first one that > exists and is readable. > > When an interactive shell that is not a login shell is started, bash > reads and executes commands from ~/.bashrc, if that file exists. This > may be inhibited by using the --norc option. The --rcfile file option > will force bash to read and execute commands from file instead of > ~/.bashrc. > > You can find more information in the "INVOCATION" section of the > manual at "man bash". There are files for per-user configuration > as well as system-wide files. I thought .shrc was used by bash as well, but looking further I see it only uses .shrc, via ENV, that when it is invoked as sh; which it's not when it's the startup shell and /bin/sh isn't a link to it. Thanks.