如何更改 .txt 全局权限?

Erl*_*tis 4 permissions command-line files

在此处输入图片说明我正在尝试使用.txtjava读取和写入文件,但我不能,因为它们的所有权限都设置为只读。我可以单独单击每个文件的属性并更改它们,但是我有很多文本文件,这是不切实际的。有没有办法改变所有.txt文件的全局读写权限?

你会认为有这么多帮助它会起作用,但即使在所有 Zannas 方法之后,我也无法在 java 中打开文件,而且权限似乎没有改变。 在此处输入图片说明

Zan*_*nna 5

如果文件有扩展名,.txt那么您可以使用以下内容:

find ~/Desktop/Research -type f -iname '*.txt' -exec chmod u+w '{}' +
Run Code Online (Sandbox Code Playgroud)

find 默认情况下是递归的,并且也会进入所有子目录。

如果文件是文本类型但没有扩展名,您可以执行类似的操作

for i in ~/Desktop/Research/*; do if [[ $(file "$i" | grep text) ]]; then echo chmod u+w "$i"; fi; done
Run Code Online (Sandbox Code Playgroud)

在此命令中,echo仅用于测试,以显示将应用哪些权限更改。echo测试后删除以实际更改权限。这一次,不会有任何输出。

如果你想让这个命令在子目录上工作,你可以这样做:

shopt -s globstar; for i in ~/Desktop/Research/**; do if [[ $(file "$i" | grep text) ]]; then echo chmod u+w "$i"; fi; done
Run Code Online (Sandbox Code Playgroud)

我已经使用chmod u+wwhich 仅为所有者添加了写权限。随心所欲地调整,(先试试这个,如果你仍然有问题,然后替换为chmod o+wchmod 666但要注意给每个人写权限!)当然,不要更改系统文件的权限。