簡體   English   中英

Bash:嘗試打開文件時權限被拒絕

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM