これが発生した場合、bashスクリプトをチェックインするにはどうすればよいですか
sudo docker images -q nginx
結果文字列が表示されます。これは、このコンテナが存在することを意味します
sudo docker images -q nginx
if [ $? != '' ]
then
echo "existing"
else
echo "missing
承認された回答:
$?
文字列ではなく、sudo
の終了ステータスです。 (この場合)。これを適切に使用するには、-gt
を使用してゼロと比較します。 、またはif (( $? ))
を使用します (bash
のようなシェルで またはksh93
(( ... ))
で算術評価を行います 。
sudo docker images -q nginx
の場合 コンテナが存在する場合は文字列が表示され、存在しない場合は文字列が表示されない場合は、それを変数に格納して、空かどうかを確認できます。
result=$( sudo docker images -q nginx )
if [[ -n "$result" ]]; then
echo "Container exists"
else
echo "No such container"
fi