免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3318 | 回复: 10
打印 上一主题 下一主题

[FreeBSD] 关于freebsd里面csh的内部数据。。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-11-19 18:19 |只看该作者 |倒序浏览
这么描述:我用root登录freebsd9.0默认shell是csh
然后我cd /usr/ports/shell/bash&& make install clean
然后我执行bash提示找不到这个命令,
但是我执行whereis bash 能看到路径在/usr/local/bin/bash
我退出当前登录,重新登录shell后,执行bash顺利进入bash的环境。。

这里就有个疑问,我安装好bash后,执行bash,难道csh不会去搜索PATH路径,而是在csh自身的数据库(假定有一个)里面搜索,搜索不到就没有。。
而重新登录csh后能找到bash命令,是因为登录csh的时候,重新把PATH路径的命令载入了csh自身的数据库?

但是我在bash下就没有这个问题,我在bash下面 cd /usr/ports/editors/vim&& make install clean 然后输入vim直接就能用,
而如果我在csh下面,,虽然我成功make了,但是直接输入vim,csh就是找不到,除非重新登录或者是输入全路径,,

大家有遇到这样的么?我遇到这个问题很久了。。。。

论坛徽章:
0
2 [报告]
发表于 2012-11-19 21:07 |只看该作者
make install之后rehash

评分

参与人数 1可用积分 +3 收起 理由
ulovko + 3 赞一个!

查看全部评分

论坛徽章:
54
2017金鸡报晓
日期:2017-02-08 10:39:42操作系统版块每日发帖之星
日期:2016-03-08 06:20:00操作系统版块每日发帖之星
日期:2016-03-07 06:20:00操作系统版块每日发帖之星
日期:2016-02-22 06:20:00操作系统版块每日发帖之星
日期:2016-01-29 06:20:00操作系统版块每日发帖之星
日期:2016-01-27 06:20:00操作系统版块每日发帖之星
日期:2016-01-20 06:20:00操作系统版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之江苏
日期:2015-12-21 20:00:24操作系统版块每日发帖之星
日期:2015-12-21 06:20:00IT运维版块每日发帖之星
日期:2015-11-17 06:20:002015亚冠之广州恒大
日期:2015-11-12 10:58:02
3 [报告]
发表于 2012-11-19 21:15 |只看该作者
二楼正解,FreeBSD这点有点麻烦,新安装的软件必须rehash一下才能找到。

论坛徽章:
0
4 [报告]
发表于 2012-11-27 17:06 |只看该作者
原来这样,果然是存在csh内部的hash表中,
那有没有办法设置自动刷新hash不?或者不读内部hash表,而是每次都从文件系统里面搜索
bash就不需要这样啊?csh应该也有相应的配置选项吧?不知二位是否知道?
回复 3# lsstarboy 回复 2# wenheping


   

论坛徽章:
89
水瓶座
日期:2014-04-01 08:53:31天蝎座
日期:2014-04-01 08:53:53天秤座
日期:2014-04-01 08:54:02射手座
日期:2014-04-01 08:54:15子鼠
日期:2014-04-01 08:55:35辰龙
日期:2014-04-01 08:56:36未羊
日期:2014-04-01 08:56:27戌狗
日期:2014-04-01 08:56:13亥猪
日期:2014-04-01 08:56:02亥猪
日期:2014-04-08 08:38:58程序设计版块每日发帖之星
日期:2016-01-05 06:20:00程序设计版块每日发帖之星
日期:2016-01-07 06:20:00
5 [报告]
发表于 2012-11-28 08:31 |只看该作者
貌似没有,只能是自己rehash。

论坛徽章:
0
6 [报告]
发表于 2012-11-28 09:40 |只看该作者

论坛徽章:
1
IT运维版块每日发帖之星
日期:2015-10-09 06:20:00
7 [报告]
发表于 2012-11-28 12:29 |只看该作者
PATH 环境变量没更新

论坛徽章:
13
15-16赛季CBA联赛之同曦
日期:2016-01-28 19:52:032015亚冠之北京国安
日期:2015-10-07 14:28:19NBA常规赛纪念章
日期:2015-05-04 22:32:03处女座
日期:2015-01-15 19:45:44卯兔
日期:2014-10-28 16:17:14白羊座
日期:2014-05-24 15:10:46寅虎
日期:2014-05-10 09:50:35白羊座
日期:2014-03-12 20:52:17午马
日期:2014-03-01 08:37:27射手座
日期:2014-02-19 19:26:54子鼠
日期:2013-11-30 09:03:56狮子座
日期:2013-09-08 08:37:52
8 [报告]
发表于 2012-11-28 12:29 |只看该作者
exit / rehash
rehash 是最简便的方法了

论坛徽章:
0
9 [报告]
发表于 2012-11-28 15:50 |只看该作者
回复 6# 芭比小柒
我看到了,新版的tcsh的确是有set autorehash=1的选项,
但是freebsd9.0默认的csh和tcsh是6.17.00
而且我diff /bin/csh /bin/tcsh发现没任何区别,两个有都不是软链接,比较奇怪。。
我在ports里面也很奇怪的没找到csh 和tcsh的port
有个ch 有个tcsh_nls 有个tcshrc就是没csh和tcsh
想升级csh和tcsh到最新版,不知道应该怎么做?难道我得去tcsh.org下载最新版,然后编译安装?

   

论坛徽章:
0
10 [报告]
发表于 2012-11-28 18:46 |只看该作者
roolcz 发表于 2012-11-28 15:50
我看到了,新版的tcsh的确是有set autorehash=1的选项,
但是freebsd9.0默认的csh和tcsh是6.17.00


FreeBSD 9.1-RC3 的 csh/tcsh 已更新至 6.18.01 版本,支援 set autorehash

评分

参与人数 1可用积分 +4 收起 理由
ulovko + 4 很给力!

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP