“mysql”如何要求输入密码?

4 c unix terminal stdin

如果我像这样运行命令行程序 mysql

 mysql -u someone -p < sql-file
Run Code Online (Sandbox Code Playgroud)

因此需要密码 ( -p),它会提示输入密码:

 Enter password:
Run Code Online (Sandbox Code Playgroud)

但是,从上面可以看出,标准输入实际上是一个文件,sql-file.

“mysql”(或类似程序)如何做到这一点?

(请注意,这不是特别关于 MySQL 的问题,我对 C 程序如何像这样访问终端感兴趣。)

Oli*_*rth 5

/dev/tty在读取模式下作为文件打开,然后从中读取。