O ** em zsh corresponde a * , mas permite a correspondência entre / em nomes de caminho. O padrão **/*.jpg será, portanto, expandido para o nome do caminho de qualquer arquivo que tenha um sufixo de nome de arquivo .jpg em qualquer lugar dentro ou abaixo do diretório atual.
O padrão ** também está disponível em bash , se ativado com shopt -s globstar . O ksh93 shell também, se ativado com set -o globstar .
O -- impede que qualquer nome de caminho (correspondente ao padrão acima) que comece com um traço seja interpretado por du como uma opção de linha de comando. O -- interrompe a análise da linha de comando de du da procura por outras opções. Isso não depende do shell, mas é uma POSIX " diretiva de utilidade " para padrão utilitários.
O -- poderia ser removido se o padrão globbing do nome do arquivo fosse alterado para ./**/*.jpg .
O comando fornecerá o tamanho total de todos os arquivos *.jpg dentro ou abaixo do diretório atual, extraindo a linha com o total da saída de du (execute o comando sem | grep total para ver o que du produz).