linux的普通用户怎么修改环境变量,linux中如何修改某用户的语言环境变量

问题是这样的,在所管理的服务器上,有的可以在终端里面输入汉字,有的不行,会显示乱码。比较其相对应的环境变量。发现关于语言的环境变量不一样。在网上搜索了大量的资料,没有找到解决的方法。看了鸟哥书中相关的部分才找到解决的方法。(网络上的信息量太大,有时会浪费大量的时间,还是没有找到自己想要的)

把掌握的方法和道理记录下来。

bash shell的配置文件:

/etc/profile用于设定几个重要变量,例如PATH,USER,MAIL,HOSTNAME,HISTSIZE, UMASK等。

引用:

-bash-3.00# more /etc/profile

# /etc/profile

# System wide environment and startup programs, for login setup

# Functions and aliases go in /etc/bashrc

pathmunge () {

if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then

if [ "$2" = "after" ] ; then

PATH=$PATH:$1

else

PATH=$1:$PATH

fi

fi

}

# Path manipulation

if [ `id -u` = 0 ]; then

pathmunge /sbin

pathmunge /usr/sbin

pathmunge /usr/local/sbin

fi

pathmunge /usr/X11R6/bin after

# No core files by default

ulimit -S -c 0 > /dev/null 2>&1

USER="`id -un`"

LOGNAME=$USER

MAIL="/var/spool/mail/$USER"

HOSTNAME=`/bin/hostname`

HISTSIZE=1000

if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then

INPUTRC=/etc/inputrc

fi

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC

for i in /etc/profile.d/*.sh ; do

if [ -r "$i" ]; then

. $i

fi

done

unset i

unset pathmunge

/etc/bashrc :用于规划umask,同时规划提示符的内容。

引用:

-bash-3.00# more /etc/bashrc

# /etc/bashrc

# System wide functions and aliases

# Environment stuff goes in /etc/profile

# by default, we want this to get set.

# Even for non-interactive, non-login shells.

if [ "`id -gn`" = "`id -un`" -a `id -u` -gt 99 ]; then

umask 002

else

umask 022

fi

# are we an interactive shell?

if [ "$PS1" ]; then

case $TERM in

xterm*)

if [ -e /etc/sysconfig/bash-prompt-xterm ]; then

PROMPT_COMMAND=/etc/sysconfig/bash-prompt-xterm

else

PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}\007"'

fi

;;

screen)

if [ -e /etc/sysconfig/bash-prompt-screen ]; then

PROMPT_COMMAND=/etc/sysconfig/bash-prompt-screen

else

PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}\033\\"'

fi

;;

*)

[ -e /etc/sysconfig/bash-prompt-default ] && PROMPT_COMMAND=/etc/sysconfig/bash-prom

pt-default

;;

esac

# Turn on checkwinsize

shopt -s checkwinsize

[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "

fi

if ! shopt -q login_shell ; then # We're not a login shell

for i in /etc/profile.d/*.sh; do

if [ -r "$i" ]; then

. $i

fi

done

unset i

fi

# vim:ts=4:sw=4

alias ls="ls --color"

设定后,需要注销再登录才能起作用。

个人设定值:

引用:

~/.bash_profile个人路径与环境变量的文件名称。

-bash-3.00# more .bash_profile

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH

unset USERNAME

LANG=zh_CN.gbk

~/.bashrc:重要的个人设定文件

-bash-3.00# more .bashrc

# .bashrc

# User specific aliases and functions

# Source global definitions

if [ -f /etc/bashrc ]; then

. /etc/bashrc

fi

~/.bash_history:这个文件记录曾经使用过的命令。

修改个人用户的语言环境变量可以修改.bashrc或者.bash_profile.

引用:

-bash-3.00# env

HOSTNAME=example

.............

LANG=en_US.UTF-8

修改后:

引用:

-bash-3.00# env

HOSTNAME=example

.............

LANG=en_US.UTF-8

LANG=zh_CN.gbk

终端乱码问题得到解决。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值