I was close but not quite correct. Here is the result after testing:
/* */
parse upper arg input
'PIPE (END ?) CP QUERY NAMES', /* Get UID's */
'| SPLIT at str /,/', /* split into lines */
'| LOCATE /- DSC/', /* Only disconnected */
'| specs w1 1', /* get names */
'| strip', /* remove blanks */
'| sort 1-8', /* sort */
'| pad 8', /* Make sure length 8 */
'| a: lookup 1.8 1.8 master', /* Compare */
'| count lines', /* how many found */
'| var iffound', /* number of names found */
'? var input', /* names parsed from cmdline */
'| split', /* split into lines */
'| pad 8', /* make sure length 8 */
'| a:', /* into lookup */
'| hole', /* drop names not in input */
'? a:', /* tert. output unref */
'| cons', /* display */
'| count lines', /* How many not found */
'| var ifnotfound' /* number of names not found */
Regards, Berry.