Crie o arquivo como quiser e imprima-o sem nova linha.
cat pw.txt | awk '{printf $1 }'
ou
printf 'cat pw.txt'
Estou usando ldapsearch
com sua opção -y
, em que a senha do servidor ldap é lida de um arquivo para garantir que a senha não seja deixada no histórico de comandos.
ldapsearch
requer que a senha esteja em um arquivo sem novas linhas. A única maneira que eu estou ciente de fazer isso é:
echo -n "myreallysecretpassword" > /path/to/password.txt
mas obviamente isso coloca a senha no histórico de comandos, que é o que eu estou tentando evitar.
Eu presumo que há uma maneira melhor, alguém poderia me apontar na direção certa?
Você pode usar a leitura para inserir uma variável intermediária de forma semi-segura:
read -s tempvar # enter your password and press enter - it will not echo back
echo -n $tempvar > pw.txt
unset tempvar
Claro que se você está preocupado principalmente sobre o histórico de comandos, você pode desativá-lo no bash assim:
export HISTFILE=
Tags text