[英]Bash - Looping through files in a directory
我知道有很多這樣的問題,但是由於眾神的熱愛,我無法發揮作用,或者我錯過了一些顯而易見的事情,在這種情況下,請原諒。
簡單目錄,我想調用每個文件的名稱和mime類型:
for i in "attachments/*"
do
echo $i $(file --mime-type -b $i)
done
為什么我的輸出如下所示:
attachments/query.sql attachments/script.sh text/plain text/x-shellscript
當我期望:
attachments/query.sql text/plain attachments/script.sh text/x-shellscript
您不需要在/tmp/attach/*
周圍/tmp/attach/*
引號。
for i in /tmp/attach/*
do
echo "$i : $(file --mime-type -b $i)"
done
使用引號時,您將/tmp/attach/*
傳遞給file
命令,而不僅僅是一對一的文件名。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.