linux基础命令

内部、外部命令

命令

在 Linux 中,命令可以分为内部命令(built-in commands)和外部命令(external commands)两种类型。

1.内部命令:内部命令是由 shell(如 Bash)本身实现的命令,它们直接在 shell 进程中运行,而不需要调用外部程序。一些常见的内部命令包括:

  • cd:改变当前工作目录
  • echo:在标准输出中打印文本或变量
  • pwd:显示当前工作目录的绝对路径
  • alias:创建命令别名
  • export:设置或显示环境变量

2.外部命令:外部命令是独立于 shell 的可执行程序,它们位于系统的 PATH 变量指定的目录中。当在 shell 中输入外部命令时,shell 会在 PATH 中查找该命令并执行之。一些常见的外部命令包括:

  • ls:列出目录内容
  • cp:复制文件或目录
  • grep:搜索文本模式
  • find:在文件系统中查找文件
  • cat:连接文件并打印到标准输出

查询

通过 type 命令可以查看一个命令是内部命令还是外部命令,例如:

[root@hx ~]# type -a cd
cd 是 shell 内嵌
cd 是 /usr/bin/cd
[root@hx ~]# type -a ls
ls 是 `ls --color=auto' 的别名
ls 是 /usr/bin/ls

help命令查询内部命令:

 whereis查找命令具体位置:

[root@hx ~]# whereis cd
cd: /usr/bin/cd /usr/share/man/man1/cd.1.gz /usr/share/man/man1p/cd.1p.gz

 Hash

具体来说,当你在 shell 中执行一个外部命令时,shell 会通过 PATH 环境变量定义的目录列表来寻找该命令对应的可执行文件。为了加快命令搜索速度,shell 会将已经找到的命令路径缓存起来,以便下次执行同样的命令时可以更快地找到它。

以下是一些常见的 hash 命令及其作用:

  1. hash:简单执行 hash 命令,它会列出当前 shell 缓存的所有外部命令及其路径。

  2. hash -r:使用 hash -r 命令可以清除 shell 对外部命令的路径缓存,使得 shell 下次执行命令时重新搜索。

  3. hash [command]:如果指定了命令名称,比如 hash ls,那么 shell 会立即查找并缓存该命令的路径,而不必等到实际执行该命令时再去搜索。

[root@hx ~]# echo $PATH 
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

获得命令帮助

  1. help:help是一个bash内置命令,用于获取bash内置命令的简要帮助信息。当在bash shell中输入help时,会列出bash内置命令的简要说明。

  2. --help:许多Linux命令都支持--help选项,用于获取特定命令的简要帮助信息。例如,可以通过在命令后加上--help来获取该命令的基本用法和选项说明。

  3. man:man命令用于查看Linux系统中的手册页(manual page)。手册页包含了关于系统命令、函数、配置文件等的详细文档。通过使用man命令,可以查看特定命令或函数的详细用法、选项、示例以及其他信息。

  4. info:info命令也是用于查看命令和程序的文档,类似于man命令,但提供更多的信息和交互式导航。一些软件包的文档可能更倾向于使用info格式进行编写,因此info命令对于查找特定软件包的详细文档非常有用。

[root@hx ~]# info ls
[root@hx ~]# man cd
[root@hx ~]# help cd
[root@hx ~]# ls --help 

查命令:https://www.runoob.com/

目录命令

在Linux系统中,有一些常用的命令用于管理目录(文件夹),以下是其中一些常见的目录相关命令,具体选项查询https://www.runoob.com/

ls:列出目录内容,显示指定目录中的文件和子目录。

ls /path/to/directory

cd:切换当前工作目录。

cd /path/to/directory

pwd:显示当前工作目录的路径。

pwd

mkdir:创建新目录。

mkdir new_directory

rmdir:删除空目录。

rmdir empty_directory

rm:删除文件或目录。

rm -r directory_to_delete(删除非空目录时需加上 -r 参数)

cp:复制文件或目录。

cp file_to_copy new_location 或 cp -r directory_to_copy new_location(复制目录时需加上 -r 参数)

mv:移动文件或目录,也可用于重命名文件或目录。

mv file_to_move new_location 或 mv old_name new_name

 

 

posted @ 2024-04-01 18:30  hx_ky36  阅读(27)  评论(0编辑  收藏  举报