如何找出新创建的文本文件的默认权限?我试过了
ls -l filename.txt
但它一直告诉我它无法访问txt文件,所以我很确定我做错了。我已经查看了笔记并进行了谷歌搜索,但我不知道如何查看它的默认权限。
答案1
正如 jordanm 在上面的评论中所述,vi
在使用 write 命令之前不会写入文件:w
。
如果您不确定如何编写该文件,我建议使用 或 来创建一个touch filename.txt
文件>filename.txt
。现在您可以使用以下命令查看新创建的文件的默认权限ls -l filename.txt
答案2
控制默认权限的称为umask
.
但....
这取决于文件的创建方式,因为可以将各种守护进程配置为使用不同的默认umask
.因此,通过 samba/cifs 共享或通过 sftp 创建文件,或者通过交互登录并使用或通过保存在某些文本编辑器(例如或或其他)touch
中创建新文件,最终都会获得不同的权限,即使文件是由同一用户在同一目录中创建。vi
joe
同样,还有所创建的文件/目录的所有权。系统默认可能是所有者是创建用户,组是创建用户的主要组。但请注意,其他文件权限可能会影响此权限(即setgid
目录上的位)以及各种守护程序配置选项,就像umask
设置一样。
答案3
写
ls -l
你会看到类似的东西:
drwxrwxr-x 3 username username 4096 lip 28 01:20 filename.txt
这些值当然可能不同,并且对于不同的文件可能会有很多这样的行。您要查找的是 drwxr... 信息,它告诉您有关权限的信息。
这里你有他们的意义。