我製作了一個bash腳本,該腳本以root用戶身份執行,並且必須驗證用戶桌面中是否存在文件。下面是代碼:測試文件是否存在於多個用戶的特定用戶的文件夾中
if [ -e /Users/*/Desktop/file ]; then
....
的事實是,如果有多個用戶在/Users/
,並且該文件不存在的第一個用戶(按字母順序排列),但在別人的一個,它就會失敗。
因此,要解決這個問題,我認爲這是很好的:
if [ -e ~/Desktop/file ]; then
....
但是,作爲腳本作爲根執行,~/Desktop/
是/private/var/root/Desktop
而不是/Users/my_user/Desktop
。
我現在不是很安心,因此我希望你能幫我解決這個問題!謝謝 !
感謝您的幫助!目前在'其他'腳本殺死一個過程。所以每次找不到文件時,都會殺死進程。只有當文件根本找不到時,如何才能使processus死掉? – b1onic 2011-03-05 15:00:42
@ b1onic:只有在文件「〜/ Desktop/file」不存在於任何用戶的情況下,你纔想殺死一個進程? – 2011-03-05 16:26:07