什么是shell? bash和shell有什么关系?
发布日期:2021-05-10 01:23:35 浏览次数:11 分类:精选文章

本文共 1248 字,大约阅读时间需要 4 分钟。

Shell 是你的 Linux 系统交互界面

Shell 是连接你与 Linux 内核的桥梁,它是你在 Linux 系统中输入命令并与系统交互的用户界面。每当你在终端提示符下输入命令时,shell 都会先解析命令并将其传递给 Linux 内核。

Shell 的作用

  • 命令解析与执行:shell 接收你的命令并根据命令类型决定是由 shell 内部处理(如 pwdecho)还是调用外部程序(如 lscp 等)。
  • 环境管理:shell 负责维护环境变量(如 PATHHOME 等),这些变量决定了程序如何找到文件、目录或其他资源。
  • 命令补齐与自动化:shell 提供丰富的功能,如命令补齐(随键入提示可能的命令)、通配符和历史记录,极大地提升了工作效率。
  • Shell 的启动过程

    shell 在系统登录成功后启动,并作为用户与系统内核的交互程序一直运行。默认的 shell 是 Bourne Again Shell(Bash),它是大多数 Linux 系统的缺省 shell。Bash 虽然向后兼容 Bourne shell,但新增了许多增强功能,如命令补齐和更强大的脚本语言支持。

    常用 Shell 及特点

  • Bash:默认的 shell,支持命令补齐、通配符和丰富的历史记录功能,是最受欢迎的选择。
  • C shell:注重用户交互友好性,但脚本语言功能不如 Bash。
  • Korn shell:结合了 C shell 和 Bourne shell 的优点,兼容性强。
  • 其他 Shell:如 tcsh 和 zsh,各有特色,常用于特定场景。
  • Bash 的优势

    Bash 不仅是默认 shell,还因为其灵活性和强大功能而深受开发者欢迎:

    • 命令补齐:输入部分命令后按 Tab 键,Bash 会自动补齐。
    • 通配符:支持 *?[...],大大简化文件管理命令。
    • 命令历史记录:保留之前的命令,并支持通过方向键或 history 命令查看和编辑。

    Shell 命令额外功能

    • 别名:为常用命令创建缩写,如 alias ll='ls -l'
    • 输入重定向wc < test 将从文件获取输入。
    • 输出重定向ls > output.txt 将结果保存为文件。
    • 管道:通过 | 传递标准输出,例如 grep pattern | wc -l 统计匹配结果。

    定制化 Shell 提示符

    Bash 的提示符可以高度定制,常见用法包括:

    • Custom PS1:如 PS1='➜ $ '
    • 内置提示符代码:如 /d, /h, /u, /W 等。

    高效工作流程

    禁止你做的事:

  • 避免常用命令拼写错误: alias 可解除痛点。
  • 后台运行耗时任务:使用 bgfg 可管理进程。
  • 保存配置:将自定义设置保存至 ~/.bash_profile,确保每次登录后生效。
  • 通过合理利用 Bash 功能,优化工作流程,你将大大提高效率。这篇指南为你提供了从基础到高级功能的全面解析,助你充分发挥 Shell 的潜力。

    上一篇:时间焦虑:为时已晚?
    下一篇:2021-05-07

    发表评论

    最新留言

    能坚持,总会有不一样的收获!
    [***.219.124.196]2025年04月17日 18时43分09秒

    关于作者

        喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
    -- 愿君每日到此一游!

    推荐文章

    04、props接收父组件的数据 2019-03-07
    DFS 2019-03-07