我很新的Linux腳本&正在試圖建立一個簡單的循環,其將:Bash腳本 - 如何保持循環查找命令直到找到文件/ s?
- 要求用戶提供文件名
- 搜索特定的目錄文件
- 如果沒有找到任何文件,要求用戶重新輸入到文件名
- 如果找到的文件,移動到腳本的下一步
這是我迄今爲止,但它不是循環(即沒有找到文件時,它不會要求用戶重新輸入文件名。 )
#!/bin/bash
read -p "Enter file name: " file
find /directory/ -name "$file" -print
while [ "$?" -ne 0 ]; do
read -p "File not found. Please re-enter file name: " file
find /directory/ -name "$file" -print
done
echo "rest of script etc"
任何幫助表示讚賞! :)
'find'在錯誤時返回非0,如果沒有找到文件則返回非0。請參閱[this](http://serverfault.com/a/225827)以獲得簡單的修復。另外,考慮在你找到一個匹配後,在你的find命令中加入'-quit'來停止遍歷。 – BroSlow