#compdef dd if compset -P 1 'conv\='; then # If there's a comma present, ignore up to the last one. The # test alone will have that effect. compset -p '*,' compgen -S, -q \ -k '(ascii ebcdic ibm block unblock lcase ucase swab noerror sync)' elif compset -P 1 '[io]f\='; then _files else compgen -S '=' -k '(if of ibs obs bs cbs skip files seek count conv)' fi