linux 系统内核和各种驱动程序覆盖在下层的硬件系统之上;对上提供各种系统调用接口API,供shell和各种程序应用程序调用。

总体结构图如下:

操作系统的层次架构

一般我们理解shell指的是BASH,即linux系统默认的字符界面使用的shell版本。另外还有kshell、cshell、zshell等不同的字符管理界面shell版本。广义上说图形界面也是一种shell,即一切操作系统的外壳,供用户使用操作系统的接口都可以称为shell。

一、内建命令和外部命令

shell 是一个命令语言解释器,它拥有自己内建的shell命令集,称为内建命令。其他不包括在此命令集的命令称为外部命令。

内建命令:命令由bash源码提供,主要是一些简单的命令;常驻内存中;在shell程序内部执行,执行过程中不需要创建子进程;因此执行速度比外部命令快。如history,cd,exit等。

外部命令:需要额外安装,功能一般比较强大,运行过程占用资源也比内建命令大。通常放在/bin,/usr/bin,/sbin,/usr/sbin等。比如:ls、vi等。

二、常用帮助命令

2.1、type 检查命令或脚本信息

常用参数

type命令的基本使用方式就是直接跟上命令名字。

type -a可以显示所有可能的类型,比如有些命令如pwd是shell内建命令,也可以是外部命令。

type -p只返回外部命令的信息,相当于which命令。

type -f只返回shell函数的信息。

type -t 只返回指定类型的信息。

使用示例

#type -a pwd

pwd is a shell builtin #内建命令

pwd is /usr/bin/pwd

2.2、help 帮助命令

help 命令只能用于内建命令,不用用于外部命令

使用示例

#help cd

cd: cd [-L|[-P [-e]]] [dir]

#help ls

-bash: help: no help topics match `ls'. Try `help help' or `man -k ls' or `info ls'.

可以使用 ls –help

2.3、man 帮助命令

man 没有内建与外部命令的区分;man 工具是显示系统手册页中的内容。man页面所属的分类标识(常用的是分类1和分类3)

1 Standard commands (标准命令)

2 System calls (系统调用)

3 Library functions (库函数)

4 Special devices (设备说明)

5 File formats (文件格式)

6 Games and toys (游戏和娱乐)

7 Miscellaneous (杂项)

8 Administrative Commands (管理员命令)

9 其他(Linux特定的),用来存放内核例行程序的文档

打开手册之后我们可以通过 pgup 与 pgdn 或者上下键来上下翻看,可以按 q 退出当前页面

2.4、info命令

$info ls

得到的信息比 man 还要多,info 来自自由软件基金会的 GNU 项目,是 GNU 的超文本帮助系统,能够更完整的显示出 GNU 信息。所以得到的信息当然更多

2.5、whatis 命令

查看命令简介,使用格式:

$whatis command

使用正则匹配:

$whatis -w “loca*”

2.6、查看命令路径

which command

whereis command

locate

linux系统shell知识点,Linux 系统中shell知识点说明和常用的帮助命令简单介绍 | IT工程师的生活足迹...相关推荐

  1. linux fg 参数,Linux的bg和fg命令简单介绍

    我们都知道,在 Windows 上面,我们要么让一个程序作为服务在后台一直运行,要么停止这个服务.而不能让程序在前台后台之间切换.而 Linux 提供了 fg 和 bg 命令,让我们轻松调度正在运行的 ...

  2. python的shell无法输入_python中shell如何逐行输入?

    我们都知道逐条输入信息是比较枯燥的,我们在程序中会设置一些脚本来自动完成.我们可以借用python shell这个工具来完成,其打开的方法想必都已经学会了.主要有两种方法:print和转换脚本语言.前 ...

  3. 【Linux】Linux中常见的文件管理以及常用的符号命令的总结

    一.文件管理的命令以及操作 操作 命令 注意点 文件/文件夹 创建 touch filename 如果是多个文件,文件名之间用 空格 隔开(eg:touch "hello word" ...

  4. linux添加一块硬盘分区,centos6中添加一块新的硬盘并分区的方法介绍

    centos6中是如何添加硬盘和分区的呢?接下来的文章中小编将会带来详细的操作方法介绍,想知道的朋友可以阅读本文了解一下. 具体要求如下: 1.添加一块新的硬盘,大小1G 2.分五个区,每个大小100 ...

  5. linux推流软件推荐,在Linux 系统使用ffmpeg软件做哔哩哔哩视频网站推流 | IT工程师的生活足迹...

    一般哔哩哔哩网站的UP主,都是使用Windows的推流软件做视频直播:最近有些空,就研究一下怎么使用Linux系统做视频推流直播. Linux 系统我最熟悉就是CentOS了,所以就选择了CentOS ...

  6. linux上的字典和数组中,centos安装词典——图形界面的和命令行

    stardict词典:这个词典好像在图形界面下用的,在命令行界面下不能用(stardict词典包可到https://pkgs.org/查找). 安装方法: 在/etc/yum.repos.d/目录下创 ...

  7. Linux 命令简单介绍第二课笔记

    第一:touch touch 1.txt 创建文件 第二:ls ls 用来查看当前文件中的内容,其中加上不同参数-a,-h,-l可以有不同的显示,同事也可以将一个具体内容从定向到一个TXT文件中:具体 ...

  8. Linux 命令简单介绍第一课笔记

    第一: 相对路径和绝对路径 相对路径:从当前路径开始进入blog文件夹 cd blog 绝对路径:从跟目录开始进入blog文件夹 cd /home/yq/Desktop/blog 全称:根目录下hom ...

  9. python定制框架知识点_python框架中flask知识点总结

    有很久没有更新我的博客了,在学习flask去了,别人都说flask不难,其实现在我也这么觉得,但是在刚接触的时候还是有点吃力的. 在学习的过程中查阅了不少,也了解了许多,今天想做个总结...以免觉得学 ...

最新文章

  1. 美翻朋友圈:用Python生成蒙太奇马赛克图片
  2. 控制车辆运行的19个神经元
  3. 增长黑客入门:手把手教你增长模型的实践操作
  4. Java多线程安全问题解决的两种方式代码案例
  5. java 左移 返回值_java左移右移运算符详解
  6. 导致定时器失效_C# 因IIS回收导致定时器失效的解决方案
  7. VSCode+PHPstudy配置PHP开发环境
  8. 软件测试工程师-Linux介绍、命令
  9. 刷脸AI供应商下调业绩预期,苹果股价应声跌掉一个小米
  10. LL1分析构造法_行测技巧:比较构造法两步轻松解决方程题
  11. 俄罗斯方块C++代码(转载他人代码)
  12. 导向滤波与opencv python实现
  13. 计算机学院春节祝福词,春节祝福语简短一句话老师
  14. freeswitch APR库
  15. 东方元鼎付淼:移动互联网创业门槛已降低
  16. asp.net政府企业网站前台+后台源码
  17. solidwork 侵权 证据_企业常见版权侵权问题咨询总结
  18. 从Bitly构建分布式系统中吸取的教训
  19. VUE + tiff.js 加载 tiff,tif 图片
  20. 常用计算机 启动bios,详解各种电脑开机怎么进入bios设置

热门文章

  1. oracle model 分组,【已解决】关于Oracle分组函数高级用法(按照N条分组并生成唯一号)...
  2. 北京矿大计算机考研每年分数线,2021中国矿业大学北京考研国家线公布时间_国家线是多少分...
  3. android canvas 网络图,【巨坑:toDataURL】canvas合成网络图片
  4. matlab kfda,SVD与KFDA相结合人脸识别-matlab-毕业论文
  5. 路由器 VS OSI七层模型
  6. epoll.h 源码记录
  7. React开发(204):react代码分割之路由懒加载
  8. React开发(182):ant design table中 带线框的列表
  9. React开发(173):ant design设置额外的展开行
  10. 前端学习(3218):批量传递props