psql 执行文件 permission denied的解决

(编辑:jimmy 日期: 2024/12/25 浏览:2)

今天安装加载MIMIC数据库,执行sql文件时,由于直接复制Windows文件路径,出现Permission denied,原因是将执行文件路径中的斜杠写成了反斜杠。

psql命令路径应该使用Unix系统路径格式。

例如:

\i D:/work/mimic-code/buildmimic/postgres/postgres_create_tables.sql

Unix使用斜杠/作为路径分隔符,由于web应用最早使用在Unix系统上,因此网络地址都采用斜杠/作为分隔符。

Windows使用反斜杠\的传统来自于DOS系统,其原因是为了不和DOS系统中命令行参数参数标志/产生混淆。

总结

1、浏览器地址网址,url,网络文件路径,使用斜杠/。

2、Windows系统使用反斜杠\作为路径分隔符,可以记忆Windows的第一笔,以免混淆。

3、目录:

./doc/ 表示当前目录中的doc文件夹;

../doc/ 当前目录的上一层目录中doc文件夹

/doc/ 项目根目录,可以指磁盘根目录,也可以指项目根目录。

补充:find: ‘/run/user/1000/gvfs': Permission denied解决办法

linux使用命令 find / -name *** 查找文件的时候会遇到以下报错

find: ‘/run/user/1000/gvfs': Permission denied 

明明用的是root用户,为什么权限不足呢?

官方说这是一个bug——bug#615848. 原因是FUSE文件系统和权限不配的问题,全局搜索时碰到它就会退出报错。

其实这个目录是空的,查不查都没关系。所以,以下解决方式比较简直暴

umount /run/user/1000/gvfs
rm -rf /run/user/1000/gvfs

现在,你再使用命令 find / -name *** 查找东西是不是就爽多了。

再给一条命令简直暴一下

一次删除所有目录的目标文件或文件夹:

find / -name ***|xargs rm -rf//***为你要删除的文件或文件夹

相信这个命令在你要彻底卸载某个程序的时候会有帮助。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。