[英]Bash: Permission denied when trying to open a file
我最近決定嘗試學習一些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
你應該看到類似的東西
-rw-r--r--
r表示可讀,可寫和x可執行文件。
第一組用於您的用戶,第二組用於您的組,第三組用於任何人。
所以在我的例子中,我顯示的文件對我來說是可讀/寫的,只讀給我的組和任何其他用戶。
使用chmod命令更改權限。
chmod 744 file
將為您創建文件讀/寫/執行,並只讀取用戶/世界。
我猜是在
$EDITOR $DAILY_FILENAME
$EDITOR
為null,因此它正在嘗試執行不可執行的$DAILY_FILENAME
。 可能在您測試時手動設置EDITOR,但沒有將其添加到.bashrc(或其他)文件中。
使用-x
選項來證明它。
如果我不得不猜測,我會建議$EDITOR
環境變量由於某種原因未定義。 看起來您的腳本正在嘗試執行notes文件 - 因為這不可執行,您將收到無用的錯誤消息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.