求教:如何修改自定义的shell函数
最近在学linux,有不少困惑,请各位高手指点,谢谢!
1,
定义一个shell函数,例如:
$la(){ls -a;}
现在想修改la的定义,如何修改?
不知对于用户自定义的shell函数,系统是如何如何管理的,应该也是一个文本文件吧,如果是那存在什么位置呢?
2,
$ls -li
$
542029 drwxr-xr-x 3 root root 4096 12月 26 21:32 mydoc
我知道mydoc一个连接是它本身,还有一个是mydoc/.,那另一个又会是什么呢?因为如果我手动对一个目录创建硬连接,出现如下信息:
[root@localhost root]# ln mydoc mydoc2
ln: ‘mydoc’: 不允许将硬链接连至目录
如果是这样,那第三个硬连接是怎么创建的呢?
3,
我目前x的终端设置的是支持中文,
[root@localhost root]# echo $LANG
zh_CN.UTF-8
在字符终端中,出现了乱码现象,我重新设置了字符终端 root用户的LANG=C
[root@localhost root]# echo $LANG
C
解决了乱码现象,输出的英文。现在的疑问是,是不是同一个用户在x的终端和字符终端可以设置不同的环境变量?重新设置的环境变量保存在哪呢?目前我已搜索了用户目录下的.bashrc,.bash_profile,
/etc下的bashrc,profile,profile.d/lang.sh,没有找到新设置的定义。
请各位不吝赐教,谢谢!
问题点数:0、回复次数:2Top
1 楼koalazoo(转转耳朵)回复于 2005-01-02 21:40:18 得分 0
1.每个shell应该有自身的环境,我觉得不会有什么文本文件存着你的shell函数,用set命令看看,应该能看到你定义的shell函数,unset la可能会取消la()的定义,没详细研究过shell函数,但是shell变量是可以直接修改的,我觉得shell函数应该也是一样的,直接重新定义试试看。
2.不太明白你的意思,可能是因为我没研究过硬连接吧。
3.X终端和纯字符终端应该都是一样的,都是用环境变量来区分语言设置的,只对当前的shell有效,用set命令应该可以看到不同的$LANG设置。
Top
2 楼Kshape(C/C++初学者~~~~)回复于 2005-01-03 15:41:48 得分 0
学习Top




