Date: Sat, 1 Jan 2011 11:01:31 +0100 From: Polytropon <freebsd@edvax.de> To: Gary Kline <kline@thought.org> Cc: FreeBSD Mailing List <freebsd-questions@freebsd.org> Subject: Re: cshrc to bashrc?? Message-ID: <20110101110131.26d20d64.freebsd@edvax.de> In-Reply-To: <20101231211542.GA8373@thought.org> References: <20101231211542.GA8373@thought.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 31 Dec 2010 13:15:45 -0800, Gary Kline <kline@thought.org> wrote: > Anybody know if there is a utility that transforms the /root/.cshrc > into a bash RC file?After decades, I'm giving up on the csh stuff. > Need something simpler. As far as I know, there is no automatic converter for csh -> sh config files. Basically, the C shell has these: - system-wide: /etc/csh.cshrc, /etc/csh.login, /etc/csh.lougout - per user: ~/.cshrc, ~/.login, ~/.logout I'm a csh user for most dialog use, because bash's interactive abilites force too much interaction (especially regarding completition) in the default configuration. But I'm more and more thinking to switch to bash permanently, as soon as I've beaten bash's misbehaviour out of its source code. :-) The system's sh uses /etc/profile and .profile in the same manner. Then there is bash, which I think uses the following files according to "man bash", section FILES: /etc/profile The systemwide initialization file, executed for login shells ~/.bash_profile The personal initialization file, executed for login shells ~/.bashrc The individual per-interactive-shell startup file ~/.bash_logout The individual login shell cleanup file, executed when a login shell exits ~/.inputrc Individual readline initialization file You have to know about the different syntax definition for both file types, but it's relatively easy. setenv ENVNAME envstring -> ENVNAME="envstring"; export ENVNAME -> export ENVNAME="envstring" set VARNAME = 'varstring' -> VARNAME="varstring" alias aliname 'alistring' -> alias aliname="alistring" All the config files allow regular sh coding sequences (such as the use of conditionals or iterators). To get a standard prompt in bash, use this: export PS1="\u@\h:\w\$ " It is the equivalent to csh's set promptchars = "%#" set prompt = "%n@%m:%~%# " Note that csh does automatically use % or # according to the first setting. I'm not sure how bash handles this. -- Polytropon Magdeburg, Germany Happy FreeBSD user since 4.0 Andra moi ennepe, Mousa, ...
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110101110131.26d20d64.freebsd>