ldapsearch password file format
Solution 1:
Keep in mind that ldapsearch will use the entire contents of the file for the password--which means it WILL include a terminating newline character if one exists. To verify if this is in fact your problem, try creating a file without one:
echo -n ThisIsaBadPassword > .pass.txt
(UPDATE: Included '-n')
Solution 2:
Assuming it is the newline/carriage reuturn try the following:
cat .pass.txt | tr -d '\n\r' > .pass2.txt
Then use the .pass2.txt file. You can always check for new lines and carriage returns with cat -vE
and they will show up as $ and ^M respectively.
You could also probably do -y <(cat .pass.txt | tr -d '\n\r')
directly in the ldapsearch command.