On 07-04-15 03:41, David C. Rankin wrote:
All,

I generally create a system-wide /etc/bash.bashrc.local file to contain history defaults. E.g.:

$ cat /etc/bash.bashrc.local
HISTCONTROL=ignoreboth:erasedups
HISTIGNORE='[ ]*:&:?'

(HISTSIZE & HISTFILESIZE are exported on a per-user basis in ~/.bashrc) I then just add a line to source it in /etc/bash.bashrc:

$ cat /etc/bash.bashrc
#
# /etc/bash.bashrc
#
<snip>
# - source /etc/bash.bashrc.local
[ -r /etc/bash.bashrc.local ] && . /etc/bash.bashrc.local

  Both files are present and readable:

$ ls -l /etc/bash.bashrc*
-rw-r--r-- 1 root root 697 Apr  6 20:01 /etc/bash.bashrc
-rw-r--r-- 1 root root 418 Mar 10 09:40 /etc/bash.bashrc.local

I do this the same way on both Arch and SuSE. Chasing a bash bug on SuSE, I would check the the environment with:

$ env | grep HIST
HISTSIZE=20000
HISTFILESIZE=20000
HISTIGNORE= *:&:?:??
HISTCONTROL=ignoreboth:erasedups

Doing a pacman update earlier to day, I just checked the environment on Arch on a whim:

$ env | grep HIST
HISTSIZE=5000
HISTFILESIZE=15000

Huh? Where is HISTIGNORE and HISTCONTROL? Is there something unique to Arch that prevents sourcing or prevents setting HISTXXX in this manner. I can't think of anything offhand that would prevent it, but it certainly isn't being set. Any ideas on why?


/etc/bash.bashrc is sourced from /etc/profile .

from man bash :
Konsole output
When bashis invoked as an interactive login shell, or as a non-interactive shell with the --loginoption, it first reads and executes commands from the file /etc/profile, if that file exists.

Verfiy your /etc/profile and are you sure you are running the command from an interactive login shell ?

LVV

Reply via email to