首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

linux中type命令

type 命令在 Linux 中用于确定一个命令的类型,即它是一个内置命令、shell 函数、别名还是一个可执行文件。这个命令有助于用户了解系统如何解析特定的命令,特别是在命令存在多种实现方式时。

基本用法

代码语言:txt
复制
type [选项] 命令名称

常用的选项有:

  • -a:显示命令的所有位置,不仅仅第一个找到的。
  • -t:只显示命令的类型,而不是路径或定义。

类型

type 命令可以识别以下类型的命令:

  1. builtin:内置命令,这些命令是 shell 的一部分,通常比外部命令更快,因为它们不需要启动新的进程。
  2. alias:别名,这是用户或系统为简化常用命令而创建的快捷方式。
  3. function:shell 函数,这是一段在 shell 中定义的可重用代码块。
  4. file:可执行文件,这是在文件系统上可以找到的独立程序。

应用场景

  • 调试:当一个命令没有按预期工作时,使用 type 可以帮助确定系统是否正在使用预期的命令版本。
  • 学习:了解一个命令是内置的还是外部的,可以帮助用户更好地理解 shell 的工作方式。
  • 性能优化:内置命令通常比外部命令更快,因为它们不需要创建新的进程。

示例

  1. 显示 ls 命令的类型:
代码语言:txt
复制
type ls

这可能会输出 /bin/ls,表示 ls 是一个可执行文件。

  1. 显示 cd 命令的类型(cd 是一个内置命令):
代码语言:txt
复制
type cd

这会输出 cd is a shell builtin

  1. 使用 -a 选项显示所有位置的 printf 命令:
代码语言:txt
复制
type -a printf

这可能会输出 printf is a shell builtin/usr/bin/printf,表示 printf 既是内置命令又是可执行文件。

  1. 使用 -t 选项仅显示命令类型:
代码语言:txt
复制
type -t grep

这会输出 file,表示 grep 是一个可执行文件。

注意事项

  • 对于一些常见的命令,如 lsgrepawk,它们通常是可执行文件。但对于一些与 shell 环境紧密相关的命令,如 cdexportalias,它们通常是内置命令。
  • 别名和函数通常用于简化复杂命令或创建特定于用户的环境。使用 type 命令可以轻松查看这些定义。
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

linux之type命令

显示指定命令的类型。 命令语法 type [-afptP] name [name ...] 命令作用 显示要查找的命令的信息。 控制查找范围和行为。 显示要查找的命令优先级最高的类型。...命令选项 a:在环境变量PATH中查找并显示所有包含name的可执行文件路径;当'-p'选项没有同时给出时,如果在别名、关键字,函数,内建的信息中存在name,则一并显示。...p:如果name在执行'type -t name'返回的不是'file',那么什么也不返回;否则会在环境变量PATH中查找并返回可执行文件路径。...type -t printf builtin type -t chmod file 注意 该命令是 bash 内建命令,相关的帮助信息请查看help命令。...命令优先级问题请查看builtin命令。 原文链接:https://rumenz.com/rumenbiji/linux-type.html 微信公众号:入门小站

53700

linux之type命令

显示指定命令的类型。 命令语法 type [-afptP] name [name ...] 命令作用 显示要查找的命令的信息。 控制查找范围和行为。 显示要查找的命令优先级最高的类型。...命令选项 a:在环境变量PATH中查找并显示所有包含name的可执行文件路径;当'-p'选项没有同时给出时,如果在别名、关键字,函数,内建的信息中存在name,则一并显示。...p:如果name在执行'type -t name'返回的不是'file',那么什么也不返回;否则会在环境变量PATH中查找并返回可执行文件路径。...type -t printf builtin type -t chmod file 注意 该命令是 bash 内建命令,相关的帮助信息请查看help命令。...命令优先级问题请查看builtin命令。 原文链接:https://rumenz.com/rumenbiji/linux-type.html

50800
  • linux之type命令

    显示指定命令的类型。 命令语法 type [-afptP] name [name ...] 命令作用 显示要查找的命令的信息。 控制查找范围和行为。 显示要查找的命令优先级最高的类型。...命令选项 a:在环境变量PATH中查找并显示所有包含name的可执行文件路径;当'-p'选项没有同时给出时,如果在别名、关键字,函数,内建的信息中存在name,则一并显示。...p:如果name在执行'type -t name'返回的不是'file',那么什么也不返回;否则会在环境变量PATH中查找并返回可执行文件路径。...type -t printf builtin type -t chmod file 注意 该命令是 bash 内建命令,相关的帮助信息请查看help命令。...命令优先级问题请查看builtin命令。 原文链接:https://rumenz.com/rumenbiji/linux-type.html

    44010

    命令手册:Linux 中的 ipvsadm 命令

    现在Linux操作系统中的命令越来越多,你了解这些命令么?本文为你讲解ipvsadm命令的知识,主要的是进行了一个简单的翻译,希望对ipvsadm命令的使用者有一定的帮助。   ...:有两种命令选项格式,长的和短的,具有相同的意思。...-E ——edit-service 编辑内核虚拟服务器表中的一条虚拟服务器记录。   -D ——delete-service 删除内核虚拟服务器表中的一条虚拟服务器记录。   ...也就是在一个虚拟服务器中增加一台新的真实服务器-e ——edit-server 编辑一条虚拟服务器记录中的某条真实服务器记录-d ——delete-server 删除一条虚拟服务器记录中的某条真实服务器记录...希望对你学习ipvsadm命令有所帮助。

    3.7K30

    linux命令hexdump,Linux系统中hexdump的命令汇总

    Linux系统中hexdump的命令汇总 hexdump是Linux系统中用来查看文件十六进制编码的命令,配合不同的参数其作用也有所不同,下面小编就给大家介绍下Linux中hexdump命令的用法,不了解的...查看一些二进制文件的内容,比如二进制文件中包含的某些字符串。可以将二进制文件转换为ASCII、10进制、16进制或8进制进行查看。...默认为字节,b则为512字节,k则为1024字节,m则为1048576字节 -d 双字节十进制显示 -o 双字节八进制显示 -v 去除中间显示的“*”字符 -x 双字节十六进制显示 -e 格式化参数 上面就是Linux...中hexdump命令的用法介绍了,从文中我们可以了解到,hexdump命令并不是只能查看十六进制的,还能进行十进制、八进制等的显示。...【Linux系统中hexdump的命令汇总】相关文章: 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

    4.5K20

    linux命令mysql启动,linux中mysql启动服务命令

    Linux下使用相关命令可以直接启动mysql服务,下面由学习啦小编为大家整理了linux下mysql启动服务命令的相关知识,希望对大家有帮助!...linux的mysql启动服务命令 linux的mysql启动服务命令1:使用mysqld启动、关闭MySQL服务 mysqld是MySQL的守护进程,我们可以用mysqld来启动、关闭MySQL服务,...关于mysqld_safe,可以参考官方文档mysqld_safe — MySQL Server Startup Script linux的mysql启动服务命令3:使用mysql.server启动、关闭...service比较熟悉的话,就会知道运行上面命令,其实是service命令去找/etc/init.d下的相关的mysql脚本去执行启动、关闭动作。...[root@DB-Server init.d]# ls my* mysql mysql.server [root@DB-Server init.d]# linux的mysql启动服务命令6: 使用/etc

    46.3K50

    linux中sed命令总结

    处理时,把当前处理的行存储在临时缓冲区中,称为模式空间(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。...h命令和G命令 在sed处理文件的时候,每一行都被保存在一个叫模式空间的临时缓冲区中,除非行被删除或者输出被取消,否则所有被处理的行都将 打印在屏幕上。...Sed对于脚本中输入的命令非常挑剔,在命令的末尾不能有任何空白或文本,如果在一行中有多个命令,要用分号分隔。以#开头的行为注释行,且不能跨行。...SCC URFILE sed -n '/SCC/{n;p}' URFILE awk '/SCC/{getline; print}' URFILE 原文:https://wangchujiang.com/linux-command.../c/sed.html 相关文章 Shell三大利器之sed linux之sed使用技巧

    3.2K20

    Linux中的alias命令

    Linux中的alias命令 开始写内容之前,简单聊下这个周末吧,这个周末没怎么学习,周六去了趟玉渊潭公园,感觉就是人比樱花多,简直挤爆了。...开始今天的主要内容吧,在linux中经常会使用某些重复性的命令,比如MySQL的启动连接串,或者是运行某个固定目录下的脚本,这种情况下,我们如果每次登陆都把这些长长的命令字符串输一遍,难免显得有些笨重,...这里给大家介绍一种方法,就是使用linux中自带的alias命令将这种重复性的命令进行简化,具体的过程描述如下,首先我们在命令航中敲下alias,可以看到以下内容: [dba_mysql ~]$ alias...show-tilde' alias yyz='ls' 运行yyz指令 [dba_mysql ~]$ yyz a.csv a.sql.0 installMySQL_new mysql-5.7.25-linux-glibc2.12...,而且这个命令在我们输入一半的时候可以通过TAB按键来进行模糊匹配,这样就大大减少了输入命令串的速度。

    3.2K40

    Linux中作业控制命令

    开门见山,最近.NET劝退师要在linux上写些长时间运行的脚本,获取Azure BlobStorage存储的数据。 记录一下Linux中后台执行作业的命令。...Linux作业 作业(Job)是shell管理的进程(每个job都有一个关联的PID),每个作业会被分配一个线性job ID。...有两种形式的作业: Foreground: 当你在终端窗口输入命令,这个命令将会占据终端窗口,直到命令执行完成, 这是一个前台Job Background: 当你在命令后面添加& 符号,命令将不会占据终端窗口...(你可在shell prompt继续输入),这是一个后台Job Linux作业控制命令 使用作业控制命令,您可以在Shell中运行和管理多个作业。...下面的例子:在后台执行sleep命令 $ sleep 100 & [1] 14488 shell返回结果:中括号内是job ID, 后面是PID;之后使用jobs命令查看状态:100s之后这个后台作业执行完成

    2.4K30
    领券