Use aspas simples ao redor dele, isso evitará que o shell o expanda, e a string será processada intacta no outro lado
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i /home/backupboy/.ssh/id_rsa [email protected] '[[ $(ls -1 /mnt/dir | wc -l) -gt 4 ]] && rm /mnt/dir/*'
Se você quiser usar algumas variáveis locais e fazer com que algumas partes sejam executadas remotamente, será necessário escapar das partes pelas quais deseja passar. Por exemplo, se você quiser que o nome do diretório esteja em uma variável que você possa fazer
path=/mnt/dir
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i /home/backupboy/.ssh/id_rsa [email protected] "[[ \$(ls -1 \"$path\" | wc -l) -gt 4 ]] && rm -- \"$path\"/*"