Inverter duas vezes para obter o diretório de trabalho é perverso. Você só queria isso:
basename 'pwd'
(Ou basename $PWD
se você preferir).
Colocar comandos em um pipeline não é relevante para essa pergunta, já que parece ser sobre cotação. Se você realmente quiser explorar detalhes de citação, compare o cat ReadMe | some_cmd | sort
com cat ReadMe | bash -c 'some_cmd' | sort
.
Quando você escreve
local container='echo ${wkdir}_my-wpdb_1'
Eu não entendo qual o papel que você espera que o echo
jogue nisto. Observe que o aspas simples inibe a expansão da variável $. Você não quer simplesmente isso?
local container="${wkdir}_my-wpdb_1"
(Você pode até mesmo omitir as aspas, pois o diretório de trabalho não possui espaços).
Depure com echo $container
ou set -x
e execute como acima: ... | docker exec -i ${container} /usr/bin/mysql ...