A. python 怎么查看signal
信号(signal)--进程之间通讯的方式,是一种软件中断。一个进程一旦接受到信号就会打断原来的程序执行流程来处理信号。
几个常用信号:
SIGINT 终止进程 中断进程 (control+c)
SIGTERM 终止进程 软件终止信号
SIGKILL 终止进程 杀死进程
SIGALRM 闹钟信号
进程结束信号 SIGTERM和SIGKILL的区别
SIGTERM比较友好,进程能捕捉这个信号,根据您的需要来关闭程序。在关闭程序之前,您可以结束打开的记录文件和完成正在做的任务。在某些情况下,假如进程正在进行作业而且不能中断,那么进程可以忽略这个SIGTERM信号。
对于SIGKILL信号,进程是不能忽略的。这是一个 “我不管您在做什么,立刻停止”的信号。假如您发送SIGKILL信号给进程,linux就将进程停止在那里。
发送信号一般有两种原因:
1(被动式) 内核检测到一个系统事件.例如子进程退出会像父进程发送SIGCHLD信号.键盘按下control+c会发送SIGINT信号
2(主动式) 通过系统调用kill来向指定进程发送信号
补充:
POSIX.1中列出的信号:
信号 值 处理动作 发出信号的原因
----------------------------------------------------------------------
SIGHUP 1 A 终端挂起或者控制进程终止
SIGINT 2 A 键盘中断(如break键被按下)
SIGQUIT 3 C 键盘的退出键被按下
SIGILL 4 C 非法指令
SIGABRT 6 C 由abort(3)发出的退出指令
SIGFPE 8 C 浮点异常
SIGKILL 9 AEF Kill信号
SIGSEGV 11 C 无效的内存引用
SIGPIPE 13 A 管道破裂: 写一个没有读端口的管道
SIGALRM 14 A 由alarm(2)发出的信号
SIGTERM 15 A 终止信号
SIGUSR1 30,10,16 A 用户自定义信号1
SIGUSR2 31,12,17 A 用户自定义信号2
SIGCHLD 20,17,18 B 子进程结束信号
SIGCONT 19,18,25 进程继续(曾被停止的进程)
SIGSTOP 17,19,23 DEF 终止进程
SIGTSTP 18,20,24 D 控制终端(tty)上按下停止键
SIGTTIN 21,21,26 D 后台进程企图从控制终端读
SIGTTOU 22,22,27 D 后台进程企图从控制终端写
处理动作一项中的字母含义如下:
A 缺省的动作是终止进程
B 缺省的动作是忽略此信号
C 缺省的动作是终止进程并进行内核映像转储(mp core)
D 缺省的动作是停止进程
E 信号不能被捕获
F 信号不能被忽略
键盘和shell的交互:
Ctrl-c Kill foreground process 常用 ;送SIGINT信号,默认进程会结束,但是进程自己可以重定义收到这个信号的行为。
Ctrl-z Suspend foreground process;送SIGSTOP信号,进程只是被停止,再送SIGCONT信号,进程继续运行。
Ctrl-d Terminate input, or exit shell 常用 有时也会使程序退出,例如没有参数的cat命令,从终端读一行显示一行,知道Ctrl+D终结输入并终结进程;不是发送信号,而是表示一个特殊的二进制值,表示 EOF。
Ctrl-s Suspend output
Ctrl-q Resume output
Ctrl-o Discard output
Ctrl-l Clear screen
控制字符都是可以用(stty命令)更改的。可以用stty -a看看终端配置。
有些信号不能被屏蔽,比如中断,还应该有杀死进程的信号,要不然内核怎么做操作系统中的老大。实际上,SIGKILL和SIGSTOP信号是不能被屏蔽或阻止的,他们的默认动作总是会被执行的
B. shell 在终端输入密码时,怎么不让密码显示出来
你可以使用stty命令来实现这个要求,
TPH=`stty-g`
stty-echo
echo"password:"
readPASSWD
stty$TPH
echo"youpasswordis$PASSWD"
C. linux常用命令有哪些 这些都是常用命令
1、date:打印或者设置系统的日期和时间。
2、stty-a:可以查看或者打印控制字符(Ctrl-C、Ctrl-D、Ctrl-Z等)。
3、passwd:用passwd-h查看。
4、logout,login:登录shell的登录和注销命令。
5、more,less,headtail:显示或部分显示文件内容。
6、lp/lpstat/cancel,lpr/lpq/lprm:打印文件。
7、chmo+x:更改文件权限。
8、rm-frdir:删除非空目录。
9、cp-Rdir:拷贝目录。
D. 在中linux,如何让下面的1052100228在输入的时候变成*号急~~~
Shell一般我们在键盘上键入口令时不希望将其显示在屏幕上,
为此可采用下面的两种办法:
·方法一:使用stty 命令
stty -echo # do not display password
echo “Enter password: \c”
read PASSWD #get the password
stty echo # restore standard configuration
·方法二:使用echo命令
设置保密属性:echo “\033[8m”
取消保密属性:echo “\033[m”
你要把输入的字符转化为*,因此需要使用stty 反复设置属性,每输入一个字符前,设置stty -echo,每输入一个字符后,设置stty echo并输出*,直到回车。推荐你看篇文章:http://www.it165.net/os/html/201209/3246.html
E. ping的相关命令
1. gpedit.msc-----组策略
2. sndrec32-------录音机
3. Nslookup-------IP地址侦测器
4. explorer-------打开资源管理器
5. logoff---------注销命令
6. tsshutdn-------60秒倒计时关机命令
7. lusrmgr.msc----本机用户和组
8. services.msc---本地服务设置
9. oobe/msoobe /a----检查XP是否激活
10. notepad--------打开记事本
11. cleanmgr-------磁盘清理
12. net start messenger----开始信使服务
13. compmgmt.msc---计算机管理
14. net stop messenger-----停止信使服务
15. conf-----------启动netmeeting
16. dvdplay--------DVD播放器
17. charmap--------启动字符映射表
18. diskmgmt.msc---磁盘管理实用程序
19. calc-----------启动计算器
20. dfrg.msc-------磁盘碎片整理程序
21. chkdsk.exe-----Chkdsk磁盘检查
22. devmgmt.msc---设备管理器
23. regsvr32 /u *.dll----停止dll文件运行
24. drwtsn32------ 系统医生
25. rononce -p ----15秒关机
26. dxdiag---------检查DirectX信息
27. regedit-------注册表编辑器
28. Msconfig.exe---系统配置实用程序
29. rsop.msc-------组策略结果集
30. mem.exe--------显示内存使用情况
31. regedit.exe----注册表
32. winchat--------XP自带局域网聊天
33. progman--------程序管理器
34. winmsd---------系统信息
35. perfmon.msc----计算机性能监测程序
36. sfc /scannow-----扫描错误并复原
37. taskmgr-----任务管理器(2000/xp/2003
38. winver---------检查Windows版本
39. wmimgmt.msc----打开windows管理体系结构(WMI)
40. wupdmgr--------windows更新程序
41. wscript--------windows脚本宿主设置
42. write----------写字板
43. wiaacmgr-------扫描仪和照相机向导
44.. Msconfig.exe---系统配置实用程序
45. mplayer2-------简易widnows media player (媒体播放机)
46. mspaint--------画图板
47. mstsc----------远程桌面连接
48. magnify--------放大镜实用程序
49. mmc------------打开控制台
50. mobsync--------同步命令
51. dcomcnfg-------打开系统组件服务
52. ddeshare-------打开DDE共享设置
53. nslookup-------网络管理的工具向导
54. ntbackup-------系统备份和还原
55. narrator-------屏幕“讲述人”
56. ntmsmgr.msc----移动存储管理器
57. ntmsoprq.msc---移动存储管理员操作请求
58. netstat -an----(TC)命令检查接口
59. syncapp--------创建一个公文包
60. sysedit--------系统配置编辑器
61. sigverif-------文件签名验证程序
62. shrpubw--------创建共享文件夹
63. secpol.msc-----本地安全策略
64. syskey---------系统加密,一旦加密就不能解开,保护windows xp系统的双重密码
65. services.msc---本地服务设置
66. Sndvol32-------音量控制程序
67. sfc.exe--------系统文件检查器
68. tourstart------xp简介(安装完成后出现的漫游xp程序)
69. eventvwr-------事件查看器
70. eudcedit-------造字程序
71. packager-------对象包装程序
72. regedit.exe----注册表
73. regsvr32 /u zipfldr.dll------取消ZIP支持
74. cmd.exe--------CMD命令提示符
75. chkdsk.exe-----Chkdsk磁盘检查
76. certmgr.msc----证书管理实用程序
77. cliconfg-------SQL SERVER 客户端网络实用程序
78. Clipbrd--------剪贴板查看器
79. ciadv.msc------索引服务程序
80. osk------------打开屏幕键盘
81. odbcad32-------ODBC数据源管理器
82. iexpress-------木马捆绑工具,系统自带
83. fsmgmt.msc-----共享文件夹管理器
84. utilman--------辅助工具管理器 用途
发送一个回送信号请求给网络主机。
语法
ping [ -d] [ -D ] [ -n ] [ -q ] [ -r] [ -v] [ -R ] [ -a addr_family ] [ -c Count ] [ -w timeout ] [ -f | -i Wait ] [ -l Preload ] [ -p Pattern ] [ -s PacketSize ] [ -S hostname/IP addr ] [ -L ] [ - I a.b.c.d. ] [ -o interface ] [ -T ttl ] Host [ PacketSize ] [ Count ]
描述
/usr/sbin/ping 命令发送一个因特网控制报文协议(ICMP) ECHO_REQUEST 去从主机或网关那里获得 ICMP ECHO_RESPONSE 信号。ping 命令用于:
* 确定网络和各外部主机的状态。
* 跟踪和隔离硬件和软件问题。
* 测试、评估和管理网络。
如果主机正在运行并连在网上,它就对回送信号进行响应。每个回送信号请求包含一个网际协议(IP)和 ICMP 头,后面紧跟一个 timeval 结构,以及来填写这个信息包的足够的字节。缺省情况是连续发送回送信号请求直到接收到中断信号(Ctrl+C)。
ping 命令每秒发送一个数据包并且为每个接收到的响应打印一行输出。ping 命令计算信号往返时间和(信息)包丢失情况的统计信息,并且在完成之后显示一个简要总结。ping 命令在程序超时或当接收到 SIGINT 信号时结束。Host 参数或者是一个有效的主机名或者是因特网地址。
缺省情况下,ping 命令将连续发送回送信号请求到显示器直到接收到中断信号(Ctrl+C). 中断键可以使用 stty 命令来更改。
由于连续回送信号请求会对系统造成一定的负载,重复的请求信号应当主要用作问题隔离。
标志
-c Count 指定要被发送(或接收)的回送信号请求的数目,由 Count 变量指出。
-w timeout 这个选项仅和 -c 选项一起才能起作用。它使 ping 命令以最长的超时时间去等待应答(发送最后一个信息包后)。
-d 开始套接字级别的调试。
-D 这个选项引起 ICMP ECHO_REPLY 信息包向标准输出的十六进制转储。
-f 指定 flood-ping 选项。-f 标志“倾倒”或输出信息包,在它们回来时或每秒 100 次,选择较快一个。每一次发送 ECHO_REQUEST,都打印一个句号,而每接收到一个 ECHO_REPLY 信号,就打印一个退格。这就提供了一种对多少信息包被丢弃的信息的快速显示。仅仅 root 用户可以使用这个选项。
注:这在网络上将非常困难,必须小心使用。Flood ping 命令仅仅 root 用户可以使用。-f 标志与 -i Wait 标志不兼容。
-I a.b.c.d 指定被 a.b.c.d 标明的接口将被用于向外的 IPv4 多点广播。-I 标志是大写的 i。
-o interface 指出 interface 将被用于向外的 IPv6 多点广播。接口以 “en0”,“tr0”等的形式指定。
-i Wait 在每个信息包发送之间等待被 Wait 变量指定的时间(秒数)。缺省值是在每个信息包发送之间等待 1 秒。这个选项与 -f 标志不兼容。
-L 对多点广播 ping 命令禁用本地回送。
-l Preload 在进入正常行为模式(每秒 1 个)前尽快发送 Preload 变量指定数量的信息包。-l 标志是小写的 L。
-n 指定仅输出数字。不企图去查寻主机地址的符号名。
-p Pattern 指定用多达 16 个“填充”字节去填充你发送的信息包。这有利于诊断网络上依赖数据的问题。例如,-p ff 全部用 1 填充信息包。
-q 指定静默输出。除了在启动和结束时显示总结行外什么也不显示。
-r 忽略路由表直接送到连接的网络上的主机上。如果 主机 不在一个直接连接的网络上,ping 命令将产生一个错误消息。这个选项可以被用来通过一个不再有路由经过的接口去 ping 一个本地主机。
-R 指定记录路由选项。-R 标志包括 ECHO_REQUEST 信息包中的 RECORD_ROUTE 选项,并且显示返回信息包上的路由缓冲。
注:IP 头仅仅大到适合 9 个这样的路由。而且,许多主机和网关忽略这个选项。
-a addr_family 映射 ICMP 信息包的目的地址到 IPv6 格式,如果 addr_family 等于 “inet6”的话。
-s PacketSize 指定要发送数据的字节数。缺省值是 56,当和 8 字节的 ICMP 头数据合并时被转换成 64 字节的 ICMP 数据。
-S hostname/IP addr 将 IP 地址用作发出的 ping 信息包中的源地址。在具有不止一个 IP 地址的主机上,可以使用 -S 标志来强制源地址为除了软件包在其上发送的接口的 IP 地址外的任何地址。如果 IP 地址不是以下机器接口地址之一,则返回错误并且不进行任何发送。
-T ttl 指定多点广播信息包的生存时间为 ttl 秒。
-v 请求详细输出,其中列出了除回送信号响应外接收到的 ICMP 信息。
参数
PacketSize 指定了要发送数据的字节数。缺省值是 56,当和 8 字节的 ICMP 头数据合并时被转换成 64 字节的 ICMP 数据。包含这个参数是为了和以前的 ping 命令版本相兼容。
Count 指定了要发送(接收)的回送信号请求的数目。包含这个参数是为了和以前的 ping 命令版本相兼容。
示例
1. 要检查网络和主机 canopus 的连接性,并且指定要发送的回送信号请求的数目,请输入:
ping -c 5 canopus
或者
ping canopus 56 5
类似下列的信息将被显示:
PING canopus.austin.century com: (128.116.1.5): 56 data bytes
64.bytes from 128.116.1.5: icmp_seq=0 ttl=255 time=2 ms
64.bytes from 128.116.1.5: icmp_seq=1 ttl=255 time=2 ms
64.bytes from 128.116.1.5: icmp_seq=2 ttl=255 time=3 ms
64.bytes from 128.116.1.5: icmp_seq=3 ttl=255 time=2 ms
64.bytes from 128.116.1.5: icmp_seq=4 ttl=255 time=2 ms
----canopus.austin.century com PING Statistics----
5.packets transmitted,5 packets received,0% packet loss
round-trip min/avg/max = 2/2/3 ms
2. 要想获取有关主机 lear 的信息,并且启动套接字级别的调试,请输入:
ping -d lear
类似下列的信息将被显示:
PING lear.austin.century com: (128.114.4.18) 56 data bytes
64.bytes from 128.114.4.18: icmp_seq=0 ttl=255 time=6 ms
64.bytes from 128.114.4.18: icmp_seq=1 ttl=255 time=17 ms
64.bytes from 128.114.4.18: icmp_seq=2 ttl=255 time=6 ms
64.bytes from 128.114.4.18: icmp_seq=3 ttl=255 time=6 ms
64.bytes from 128.114.4.18: icmp_seq=4 ttl=255 time=6 ms
^C
----lear.austin.century com PING Statistics ----
5.packets transmitted,5 packets received,0% packet loss
round-trip min/avg/max = 6/8/17 ms
注:输出将一直重复直到接收到中断信号(Ctrl+C)。
3. 要获取有关主机 opus 的信息,并且指定要发送的字节数,请输入:
ping -s 2000 opus
或者
ping opus 2000
类似下列的信息将被显示:
PING opus.austin.century com: (129.35.34.234): 2000 data bytes
2008 bytes from 129.35.34.234: icmp_seq=0 ttl=255 time=20 ms
2008 bytes from 129.35.34.234: icmp_seq=1 ttl=255 time=19 ms
2008 bytes from 129.35.34.234: icmp_seq=2 ttl=255 time=20 ms
2008 bytes from 129.35.34.234: icmp_seq=3 ttl=255 time=20 ms
2008 bytes from 129.35.34.234: icmp_seq=4 ttl=255 time=20 ms
2008 bytes from 129.35.34.234: icmp_seq=5 ttl=255 time=19 ms
2008 bytes from 129.35.34.234: icmp_seq=6 ttl=255 time=19 ms
^C
----opus.austin.century com PING Statistics----
7.packets transmitted,7 packets received,0% packet loss
round-trip min/avg/max = 19/19/20 ms
注:输出将一直重复直到接收到中断信号 (Ctrl+C)。
4. 要调用 flood-ping 选项给主机 stlopnor,请输入:
ping -f stlopnor
类似下列的信息将被显示:
Ping stlopnor.austin.century com: (129.35.34.234): 56 data bytes
.^C
----stlopnor.austin.century com PING Statistics ----
1098 packets transmitted,1097 packets received,0% packet loss
round-trip min/avg/max = 4/4/11
注:flood-ping 命令的输出将一直重复,直到接收到中断信号(Ctrl+C)。
5. 要指定发送到主机 opus 信息包的发送时间间隔为 5 秒,请输入:
ping -i5 opus
类似下列的信息将被显示:
PING opus.austin.century com: (129.35.34.234): 56 data bytes
64.bytes from 129.35.34.234: icmp_seq=0 ttl=255 time=5 ms
64.bytes from 129.35.34.234: icmp_seq=1 ttl=255 time=5 ms
64.bytes from 129.35.34.234: icmp_seq=2 ttl=255 time=6 ms
^C
----opus.austin.century com PING Statistics----
3.packets transmitted,3 packets received,0% packet loss
round-trip min/avg/max = 5/5/6 ms
注:输出将一直重复,直到接收到中断信号(Ctrl+C)。
6. 在进入正常行为模式前尽快发送 Preload 变量指定的数量的信息包到主机 opus,请输入:
ping -l 10 opus
类似下列的信息将被显示:
PING opus.austin.century com: (129.35.34.234): 56 data bytes
64.bytes from 129.35.34.234: icmp_seq=0 ttl=255 time=9 ms
64.bytes from 129.35.34.234: icmp_seq=1 ttl=255 time=11 ms
64.bytes from 129.35.34.234: icmp_seq=2 ttl=255 time=16 ms
64.bytes from 129.35.34.234: icmp_seq=3 ttl=255 time=22 ms
64.bytes from 129.35.34.234: icmp_seq=4 ttl=255 time=26 ms
64.bytes from 129.35.34.234: icmp_seq=5 ttl=255 time=27 ms
64.bytes from 129.35.34.234: icmp_seq=6 ttl=255 time=30 ms
64.bytes from 129.35.34.234: icmp_seq=7 ttl=255 time=31 ms
64.bytes from 129.35.34.234: icmp_seq=8 ttl=255 time=33 ms
64.bytes from 129.35.34.234: icmp_seq=9 ttl=255 time=35 ms
64.bytes from 129.35.34.234: icmp_seq=10 ttl=255 time=36 ms
64.bytes from 129.35.34.234: icmp_seq=11 ttl=255 time=6 ms
64.bytes from 129.35.34.234: icmp_seq=12 ttl=255 time=6 ms
64.bytes from 129.35.34.234: icmp_seq=13 ttl=255 time=6 ms
64.bytes from 129.35.34.234: icmp_seq=14 ttl=255 time=7 ms
64.bytes from 129.35.34.234: icmp_seq=15 ttl=255 time=6 ms
^C
----opus.austin.century com PING Statistics----
16.packets transmitted,16 packets received,0% packet loss
round-trip min/avg/max = 6/19/36 ms
注:输出将一直重复,直到接收到中断信号(Ctrl+C)。
7. 要诊断网络上依赖数据的问题,请输入:
ping -p ff opus
这个命令用全为 1 的填充模式发送信息包给主机 opus。类似下列的信息将被显示:
PATTERN: 0xff
PING opus.austin.century com: (129.35.34.234): 56 data bytes
64.bytes from 129.35.34.234: icmp_seq=0 ttl=255 time=5 ms
64.bytes from 129.35.34.234: icmp_seq=1 ttl=255 time=5 ms
64.bytes from 129.35.34.234: icmp_seq=2 ttl=255 time=5 ms
64.bytes from 129.35.34.234: icmp_seq=3 ttl=255 time=6 ms
64.bytes from 129.35.34.234: icmp_seq=4 ttl=255 time=5 ms
^C
----opus.austin.century com PING Statistics----
5.packets transmitted,5 packets received,0% packet loss
round-trip min/avg/max = 5/5/6 ms
注:输出将一直重复,直到接收到中断信号(Ctrl+C)。
8. 要指定静默输出,请输入:
ping -q bach
仅仅类似下列的总结信息将被显示:
PING bach.austin.century com: (129.35.34.234): 56 data bytes
^C
----bach.austin.century com PING Statistics----
5.packets transmitted,5 packets received,0% packet loss
round-trip min/avg/max = 5/5/8 ms
注:虽然没有显示,信息包的输出将一直继续,直到接收到中断信号(Ctrl+C)。
F. R17OPPO复制电话号码怎么做
R17OPPO复制电话号码怎么做,依次进入手机【设置】——【系统应用】——【电话本】——【导入/导出联系人】,根据需要设置即可。如下图所示:
G. 请教stty 用法
苹果电脑底层也是linux,所以可以在terminal里
使用linux的串口命令对串口参数进行设置。
stty是linux下改变和打印终端设置的常用命令。
当然,我们可以利用它设置我们的串口打印操作信息。
举例:stty -F /dev/ttyS0 speed cs8 -parenb -cstopb -echo
解释:通过stty设置/dev/ttyS0串口, 波特率为 ,数据位cs8,奇偶校验位-parenb,停止位-cstopb,同时-echo禁止终端回显。
具体stty用法,可以在terminal里使用man stty命令看到。
H. shell 的 stty -icanon命令作用是什么
按照楼上的说法
icanon选项是控制tty的Ctrl-H,Ctrl-W,Ctrl-U功能的,于是我做了下面的实验发现,还有更多
关闭icanon选项:stty -icanon
执行cat命令,然后输入hello world发现
①输入变为hheelloo wwoorrlldd
②Ctrl-W,Ctrl-D,Ctrl-H,Ctrl-X都不起作用了
重新开启icanon选项:stty icanon(注意没有中划线了)
执行cat,输入hello world,发现一切正常了
结论:
icanon选项控制了一些输入时的功能,manpage中:
enable erase, kill, werase, and rprnt special characters
但是如果erase, kill, werase对应了Ctrl-H,Ctrl-X,Ctrl-D,Ctrl-W,还有rprnt特殊字符不明白是什么意思,难道是回显(所以hello变成了hheelloo)
I. 我的linux帐户登陆命令行,为什么不支持方向键
登陆进去$符号,改变linux用户提示符,需要配置用户的.bashrc文件,在里面添加PS1环境变量。PS1是命令行提示符环境变量
例如:export PS1='[u@H W]$ '
登陆进去后,方向键,Delete键,Backspace键,都会在屏幕上显示为^[[C之类的,处理办法:输入命令 set -o vi, 让bash 模拟vi的操作,就可以了
J. Linux 下system ("stty -echo")是什么意思
system ("stty -echo")的作用就是在程序中调用stty -echo 这个终端命令。stty -echo 设置命令不被显示。
system()函数可以调用参数所指的系统命令,谁调用的本程序,谁就是这个所谓的“系统"
stty 是unix下的命令,可以改变并打印终端行设置
stty -icanon 设置一次性读完操作,如使用getchar()读操作,不需要按enter
stty icanon 取消上面设置
stty -a 查看 信息
stty -echo 设置命令不被显示
stty echo 取消不显设置
stty raw -echo
stty raw echo
stty iuclc #开启
stty -iuclc #恢复