我最近决定尝试学习一些bash脚本,作为一个有趣的练习我决定创建一个脚本来打开每日文件,让我在脚本运行时写笔记.
它工作正常,直到我退出并稍后返回系统,当我收到错误
/usr/local/bin/notes: line 45: /home/MY_USERNAME/notes/2010-10-01:Permission denied
我可能会弄错,但这肯定不像是不需要额外权限的东西,是吗?
编辑器设置为 nano
文件的权限是 -rw-rw-r--
脚本的权限是 -rwxr-xr-x
检查文件的权限
ls -l /path/to/your/file
Run Code Online (Sandbox Code Playgroud)
你应该看到类似的东西
-rw-r--r--
Run Code Online (Sandbox Code Playgroud)
r表示可读,可写和x可执行文件.
第一组用于您的用户,第二组用于您的组,第三组用于任何人.
所以在我的例子中,我显示的文件对我来说是可读/写的,只读给我的组和任何其他用户.
使用chmod命令更改权限.
chmod 744 file
Run Code Online (Sandbox Code Playgroud)
将为您创建文件读/写/执行,并只读取用户/世界.
我猜是在
$EDITOR $DAILY_FILENAME
Run Code Online (Sandbox Code Playgroud)
$EDITOR
是null,所以它试图执行$DAILY_FILENAME
哪个不可执行.可能在您测试时手动设置EDITOR,但没有将其添加到.bashrc(或其他)文件中.
使用该-x
选项来证明它.
归档时间: |
|
查看次数: |
32661 次 |
最近记录: |