小编Gle*_*911的帖子

无法读取我有读取权限的文件

我有一组文件,我无法通过访问catvim虽然我已经读访问。

父目录的权限设置如下:

drwxrws--- 2 test test_grp 94424 May 10 20:01 my_test_grp

那么我想访问的文件的权限设置如下:

-rwxrwx--- 1 test test_grp 3398 May 10 19:40 my_test_file.txt

当我执行时id -gn,它返回以下内容:test_grp

当我尝试执行时cat,我收到以下信息:

cat: my_test_file.txt: Permission denied

我试过注销并重新登录终端,但无济于事。是否有任何其他建议的步骤来修复此问题?

另外,我没有sudo访问权限。

更新 后,df -h我可以看到该目录位于文件系统为已挂载 NFS 的位置。这也可能是一个因素吗?

permissions nfs

6
推荐指数
1
解决办法
1102
查看次数

使用 Sed 查找和替换,而不是常规文件

我正在开发一个便携式 anaconda 包,我正在尝试使用 find 和 sed 来查找所有文件并替换当前目录及其子目录中文件中的路径。

但是,当我执行命令时,sed 抛出错误:

sed: couldn't edit anaconda3: not a regular file
Run Code Online (Sandbox Code Playgroud)

我使用的命令是:

find ./ -type f -exec sed -i -e "s+/opt/conda_tools+$TOOLKIT_DIR+g" * {} \;
Run Code Online (Sandbox Code Playgroud)

我使用 + 作为分隔符,因为 / 是路径的一部分。我正在执行脚本的目录的内容是:

drwxr-xr-x 24 test_user linuxusers 4096 十一月 21 日 16:07 anaconda3

单独执行 find 命令会按预期列出文件,但由于某种原因,目录名称仍在被选取。我还尝试了以下命令变体,但没有成功:

find ./ -type f -exec sed -i '' "s+/opt/conda_tools+$INSTALL_DIR+g" * {} \;
Run Code Online (Sandbox Code Playgroud)

我以前成功地使用过 find 和 sed,但我有点不知道下一步该往哪里看。有什么明显的错误是我在这里遗漏的,或者不是那么明显?

sed find

5
推荐指数
1
解决办法
9587
查看次数

标签 统计

find ×1

nfs ×1

permissions ×1

sed ×1