サーバのファイルのコンテンツタイプをチェックしたいと思います。 次のコードは、常に「画像サイズが無効です」とエコーします。シェルでカールを使用してコンテンツタイプをチェックする方法
TYPE=$(curl -sI $IMAGE_LINK | grep Content-Type)
IFS=" "
set $TYPE
echo $2
if [ $2 == "image/gif" ]
then
echo "image size is valid"
exit 0
else
echo "image size is invalid"
exit 1
fi
これは出力です。 $ 2が「image/gif」のときに比較が機能しないのはなぜですか?
image/gif
image size is invalid
さらに
、 これは私の不要なソリューションです。
TYPE=$(curl -sI $IMAGE_LINK | grep "Content-Type: image/gif")
echo $TYPE
if [ ! "$TYPE" = "" ]
使用 'PCREモードでgrep' .. | grep -Po '(?<=コンテンツタイプ:)[^;] *' '。それをバックアップせずに 'IFS'を操作しないでください。デフォルトでは値は単一の空白です。 – Inian