如何解决/home/oracle: is a directory报警

简介: 今儿碰见一个略诡异的问题,source .bash_profile有一个警告,su - oracle有相同的警告,提示/home/oracle是一个目录。

今儿碰见一个略诡异的问题,source .bash_profile有一个警告,

su - oracle有相同的警告,


提示/home/oracle是一个目录。


看一下profile文件,


没看出有什么不同,和另外一台正常的机器比较,看着是一样的,奇怪了?


仔细看用光标,发现了一些端倪,


结尾行有一个~符号,颜色和下面行的不同,另外这行可以使用光标达到,下面行是不能达到,难道是这个问题?


尝试删除黑色的~符号这行,


执行source,或者su,均不会报错了,


看来问题就是bash_profile中这一行中~产生的作用,可这是为什么?


既然因为bash_profile多了一行~,有这个错误,我们尝试使用~,显示的错误和之前一样,


~是什么意思?其实了解Linux系统的朋友们,肯定非常清楚,比如当前目录是/home/oracle,


cd上一级路径,


cd ~,回到了/home/oracle,


其实~表示的就是用户的家目录,


这就解释了为何bash_profile中,多一个~行,执行source或者su的时候,就会报/home/oracle是一个目录的错误,因为~表示用户的家目录,因此source执行会报错,su的时候由于会执行bash_profile,因此会报相同的错误。


总结:

1. 虽然这报错只是warning,并未影响什么,但作为一名程序员来说,我们不能视而不见,凡事有因果,根据错误信息,找出原因,并解决之,才是我们对待问题的态度,善于思考,不忽视细节,才能让我们得到锻炼和提高。

2. Linux中~符号表示的就是用户的家目录,因此执行cd ~可以回到家目录,单独执行~则会提示这只是一个目录,换言之不是一个可执行程序。


如果您觉得此篇文章对您有帮助,欢迎关注微信公众号:bisal的个人杂货铺,您的支持是对我最大的鼓励!共同学习,共同进步:)

目录
相关文章
|
SQL Oracle 关系型数据库
什么是Oracle的目录( Directory)
什么是Oracle的目录( Directory)
540 0
|
SQL 关系型数据库 数据库
|
监控 Oracle 关系型数据库
Oracle中的PGA监控报警分析二(r12笔记第87天)
今天又收到了一条报警的信息,看起来很常规,但是后面的故事如果你做了分析就会发现其实本身并不平常,我觉得我得出手了。 ZABBIX-监控系统: ------------------------------------报警内容: PGA Alarm ...
1247 0
|
SQL 监控 Oracle
Oracle中的PGA监控报警分析(r11笔记第97天)
最近接到一个数据库报警,让我颇有些意外,这是一个PGA相关的报警。听起来感觉是应用端的资源调用出了问题。 报警内容大体如下: 报警内容: PGA Alarm on alltest ------------------------------------报警级别: PROBLEM ------------------------------------监控项目: PGA:6118.6 这是一个12cR1的环境,是一套测试环境,确切的说是多套环境整合后的一套大的测试环境,里面含有近8个PDB,也就是之前的多个测试环境整合而来。
1620 0

推荐镜像

更多