您的位置:首页 > 运维架构 > Linux

Linux stty命令

2016-05-14 23:11 429 查看
stty时一个用来改变并打印终端行设置的常用命令。

1 ,在命令行下,禁止输出大写的方法

stty -icanon 设置一次性读完操作,如使用getchar()读操作,不需要按enter

stty icanon 取消上面设置

stty -a 查看 信息

stty -echo 关闭命令的回显,即键入的任何字符均不在屏幕显示

stty echo
取消上面设置,取消不显设置

stty raw 终端驱动处于一次一个字符模式

stty cooked 终端驱动处又回到一次一行模式

stty iuclc #开启

stty -iuclc #恢复

1.Linux中显示密码为*:

int main()

{

char c[7];

int i;

system("stty -icanon");

system("stty -echo");

for(i = 0;i < 6 ;i ++)

{

c[i] = getchar();

printf("*");

}

c[i] = '\0';

system("stty echo");

return 0;

}

2,在命令行下禁止输出小写

stty olcuc #开启

stty -olcuc#恢复

3,打印出终端的行数和列数

stty size

4,改变ctrl+D的方法:

stty eof "string"

系统默认是ctrl+D来表示文件的结束,而通过这种方法,可以改变!

5,屏蔽显示

stty -echo #禁止回显

stty echo #打开回显

测试方法:

stty -echo;read;stty echo;read

6,忽略回车符

stty igncr #开启

stty -igncr#恢复

7.定时输入

timeout_read()

{

timeout=$1

old_stty_settings=`stty -g`  #save current settings

stty -icanon min 0 time 100  #set 10seconds,not 100seconds

eval read varname  #=read $varname

stty "$old_stty_settings"  #recover settings

}

更简单的方法就是利用read命令的-t选项

read -t 10 varname
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: