Linux工具命令
文章
traceroute
traceroute显示数据包到主机间的路径 补充说明traceroute命令 用于追踪数据包在网络上的传输时的全部路径,它默认发送的数据包大小是40字节。 通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径。当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不一样,但基本上来说大部分时候所走的路由是相同的。 traceroute通过发送小的数据包到目的设备直到其返回,来测量其需要多长时间。一条路径上的每个设备traceroute要测3次。输出结果中包括每次测试的时间(ms)和设备的名称(如有的话)及其ip地址。 语法1traceroute(选项)(参数) 选项123456789101112131415-d:使用Socket层级的排错功能;-f<存活数值>:设置第一个检测数据包的存活数值TTL的大小;-F:设置勿离断位;-g<网关>:设置来源路由网关,最多可设置8个;-i<网络界面>:使用指定的网络界面送出数据包;-I:使用ICMP回应取代UDP资料...
trap
trap捕捉信号和其他事件并执行命令。 概要1trap [-lp] [[arg] signal_spec ...] 主要用途 用于指定在接收到信号后将要采取的动作。 脚本程序被中断时执行清理工作。 选项12-l 打印信号名称以及信号名称对应的数字。-p 显示与每个信号关联的trap命令。 参数arg:接收到信号时执行的命令。 signal_spec:信号名称或信号名称对应的数字。 返回值如果表达式执行结果为成功时返回0,当参数 signal_spec 没有指定有效值时返回1。 关于信号信号是一种进程间通信机制,它给应用程序提供一种异步的软件中断,使应用程序有机会接受其他程序活终端发送的命令(即信号)。应用程序收到信号后,有三种处理方式:忽略,默认,或捕捉。进程收到一个信号后,会检查对该信号的处理机制。如果是SIG_IGN,就忽略该信号;如果是SIG_DFT,则会采用系统默认的处理动作,通常是终止进程或忽略该信号;如果给该信号指定了一个处理函数(捕捉),则会中断当前进程正在执行的任务,转而去执行该信号的处理函数,返回后再继续执行被中断的任务。 在有些情况下,我们不...
tree
tree树状图列出目录的内容 补充说明tree命令 以树状图列出目录的内容。 语法1tree(选项)(参数) 选项12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455------- 列表选项 --------a # 显示所有文件和目录。-d # 显示目录名称而非文件。-l # 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。-f # 在每个文件或目录之前,显示完整的相对路径名称。-x # 将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该目录予以排除在寻找范围外。-L level # 限制目录显示层级。-R # Rerun tree when max dir level reached.-P pattern # <范本样式>...
true
true返回状态为成功。 概要1true 主要用途 用于和其他命令进行逻辑运算。 返回值返回状态总是成功;返回值为0。 例子123456# 当你的脚本设置set -e时,任何返回值为失败的命令都会使得脚本退出。set -e# 如何临时跳过呢?下面的语句使用逻辑或操作符连接true,返回值一定为真。some_command || true# 当然,和python的pass一样,也可以用作条件语句临时占位。 注意 该命令是bash内建命令,相关的帮助信息请查看help命令。
tty
tty显示连接到当前标准输入的终端设备文件名 概要1tty [option] ... 主要用途 显示连接到当前标准输入的终端设备文件名,当标准输入不是终端时打印 “not a tty”。 选项123-s, --silent, --quiet 不打印任何信息,只返回退出状态。--help 显示帮助信息并退出。--version 显示版本信息并退出。 返回值当使用 -s, --silent, --quiet 时,返回码为 0 表示标准输入是终端,返回码为 1 表示标准输入不是终端,返回码为 2 表示选项错误,返回码为 3 表示有写错误发生。 例子显示连接到当前标准输入的终端设备文件名。 12[root@localhost ~]# tty/dev/pts/2 查找终端关联的进程(假设是 pts/2) 12# 注意是筛选 TTY 列。ps -ef | egrep "pts/2 " | grep -v grep 注意 该命令是GNU coreutils包中的命令,相关的帮助信息请...
type
type显示指定命令的类型。 概要1type [-afptP] name [name ...] 主要用途 显示要查找的命令的信息。 控制查找范围和行为。 显示要查找的命令优先级最高的类型。 选项12345-a:在环境变量PATH中查找并显示所有包含name的可执行文件路径;当'-p'选项没有同时给出时,如果在别名、关键字,函数,内建的信息中存在name,则一并显示。-f:排除对shell函数的查找。-p:如果name在执行'type -t name'返回的不是'file',那么什么也不返回;否则会在环境变量PATH中查找并返回可执行文件路径。-P:即使要查找的name是别名、内建、函数中的一个,仍然会在环境变量PATH中查找并返回可执行文件路径。-t:根据name的类型返回一个单词(别名,关键字,函数,内建,文件),否则返回空值。 参数name:要查找的命令,可以为多个。 返回值当指定的命令可以找到时返回成功,如果有没找到的返回失败。 例子123456接下来要用到的例子假设'~/.bashrc'...
ulimit
ulimit控制shell程序的资源 补充说明ulimit命令 用来限制系统用户对shell资源的访问。如果不懂什么意思,下面一段内容可以帮助你理解: 假设有这样一种情况,当一台 Linux 主机上同时登陆了 10 个人,在系统资源无限制的情况下,这 10 个用户同时打开了 500 个文档,而假设每个文档的大小有 10M,这时系统的内存资源就会受到巨大的挑战。 而实际应用的环境要比这种假设复杂的多,例如在一个嵌入式开发环境中,各方面的资源都是非常紧缺的,对于开启文件描述符的数量,分配堆栈的大 小,CPU 时间,虚拟内存大小,等等,都有非常严格的要求。资源的合理限制和分配,不仅仅是保证系统可用性的必要条件,也与系统上软件运行的性能有着密不可分的联 系。这时,ulimit 可以起到很大的作用,它是一种简单并且有效的实现资源限制的方式。 ulimit 用于限制 shell 启动进程所占用的资源,支持以下各种类型的限制:所创建的内核文件的大小、进程数据块的大小、Shell 进程创建文件的大小、内存锁住的大小、常驻内存集的大小、打开文件描述符的数量、分配堆栈的最大大小、CPU 时间、单个用...
umask
umask显示或设置创建文件的权限掩码。 概要1umask [-p] [-S] [mode] 主要用途 显示当前的文件权限掩码。 通过八进制数的方式设置创建文件的权限掩码。 通过符号组合的方式设置创建文件的权限掩码。 参数mode(可选):八进制数或符号组合。 选项12-p:当没有参数时指定该选项,执行产生的输出格式可复用为输入;-S:以符号组合的方式输出创建文件的权限掩码,不使用该选项时以八进制数的形式输出。 返回值返回状态为成功除非给出了非法选项或非法参数。 例子以下的例子均假设文件权限掩码为0022。 12345678# 以八进制数的形式输出创建文件的权限掩码。umask -p# 执行结果:umask 0022# 以符号组合的方式输出创建文件的权限掩码。umask -S# 执行结果:u=rwx,g=rx,o=rx 参考man chmod文档的DESCRIPTION段落得知: u符号代表当前用户。 g符号代表和当前用户在同一个组的用户,以下简称组用户。 o符号代表其他用户。 a符号代表所有用户。 r符号代表读权限以及八进制数4。 w符号代表写权限以及八进制数2。 ...
umount
umount用于卸载已经加载的文件系统 补充说明umount命令 用于卸载已经加载的文件系统。利用设备名或挂载点都能umount文件系统,不过最好还是通过挂载点卸载,以免使用绑定挂载(一个设备,多个挂载点)时产生混乱。 语法1umount(选项)(参数) 选项1234567-a:卸除/etc/mtab中记录的所有文件系统;-h:显示帮助;-n:卸除时不要将信息存入/etc/mtab文件中;-r:若无法成功卸除,则尝试以只读的方式重新挂入文件系统;-t<文件系统类型>:仅卸除选项中所指定的文件系统;-v:执行时显示详细的信息;-V:显示版本信息。 参数文件系统:指定要卸载的文件系统或者其对应的设备文件名。 实例下面两条命令分别通过设备名和挂载点卸载文件系统,同时输出详细信息: 通过设备名卸载 12umount -v /dev/sda1/dev/sda1 umounted 通过挂载点卸载 12umount -v /mnt/mymount//tmp/diskboot.img umounted 如果设备正忙,卸载即告失败。卸载失败的常见原因是,某个打开的shell当前...
unalias
unalias删除由alias设置的别名 概要1unalias [-a] name [name ...] 主要用途 删除一个或多个别名。 删除全部已定义的别名。 选项1-a:删除全部已定义的别名。 参数name:指定要删除的一个或多个已定义的别名。 返回值unalias返回true除非您要删除的别名未定义。 例子123456# 删除全部已定义的别名unalias -a# 删除已定义的别名(假设当前环境存在以下别名)unalias viunalias ls grep 错误用法 要删除的别名未定义。 不使用-a选项时没有传递name参数。 注意 执行脚本时请注意: 使用source命令执行的bash脚本如果执行了alias或unalias命令,那么有可能会对终端环境的别名设置产生影响;终端环境的别名设置也可能改变运行结果; 通过sh方式调用的bash脚本或直接运行当前用户有执行权限的脚本不受终端环境的别名影响。 查看及设置别名,请查看alias命令。 该命令是bash内建命令,相关的帮助信息请查看help命令。














