Bash
從遠端腳本執行時查找不起作用
我在腳本中有以下行:
find ~ Templates -maxdepth 0 -type d -empty
正如預期的那樣工作正常。但是,當我將腳本複製到 samba 共享並從那裡(
bash myscript.sh
)執行它時,find
找不到目錄:find: ‘Templates’: No such file or directory
$PATH 變數是相同的,在 strace 中我也找不到原因。
有人知道為什麼 find 會這樣嗎?這是一個錯誤還是我沒有
find
按照我應該的那樣使用命令?使用 Ubuntu 19.10 和 bash 5.0
您收到消息
find: ‘Templates’: No such file or directory
是因為沒有 Templates 子目錄
- 要麼 - 從您執行腳本的那一刻開始
cd
或 - 在腳本中未提及的部分已切換到的目錄中我想知道這是否都是一個錯字,你的意思是
~/Templates
。無論哪種方式,您都不應該~
在腳本中使用,而是使用"$HOME"
,因此生成的路徑將是"$HOME/Templates"
.
“不,因為模板是我在 ‘~’ 或使用者主目錄中搜尋的目錄”
find ~ -maxdepth 0 -type d -empty -name Templates