簡體   English   中英

Bash腳本:目前,我在一個目錄中應該有500個文件,如果缺少任何文件,如何停止bash腳本?

[英]Bash Scripting: I currently am supposed to have 500 files inside a directory, how can I stop a bash script if any files are missing?

我目前有一個目錄,應該具有500個文件。 每個文件的名稱格式為List.1.rds, ... List.500.rds 通過bash中的以下代碼,可以查看丟失的內容:

for((i=1; i<=500; i++)); do name="List.${i}.rds"; [[ ! -e "$name" ]] && echo "missing $name"; done

如果缺少文件,它將返回丟失的文件名。 但是,如果缺少任何文件,我想更進一步,並停止整個腳本。 有沒有辦法做到這一點? 謝謝。

它可以像缺少文件時設置標志一樣簡單:

miss=0
for ((i=1;i<=500;i++)); do
    file=List.$i.rds
    if [[ ! -e $file ]]; then
        echo "Missing $file"
        miss=1
    fi
done

# exit if "miss" flag is 1
((miss)) && exit 1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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