shell(1)介绍

在计算机科学中,shell 是一种用户界面,用于与操作系统交互。它通常是一个命令行界面(CLI),允许用户通过输入文本命令来执行任务,比如运行程序、管理文件或配置系统。Shell 的名称来源于它像“壳”一样包裹着操作系统内核,提供了一个与内核沟通的桥梁。

d5352a7a5aada1622c457c7f6131759c.png

常见Shell 类型

  1. Bourne Shell (sh)

    • Unix中最古老的shell之一,由Stephen Bourne开发。
    • 简单但功能有限,很多现代shell都基于它。
  2. Bash (Bourne Again Shell)

    • 最流行的Linux shell,是Bourne Shell的增强版。
    • 支持脚本编写、命令历史、自动补全等功能。
  3. Zsh

    • 一个功能强大的现代shell,扩展了Bash的功能。
    • 提供更好的自定义选项和插件支持,比如Oh My Zsh。
  4. Fish (Friendly Interactive Shell)

    • 以用户友好著称,默认提供语法高亮和智能建议。
  5. PowerShell

    • 微软开发的shell,主要用于Windows,但也支持跨平台。
    • 面向对象,适合系统管理和自动化。

当前系统支持的shell清单

root@gaga:~# cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/usr/bin/sh
/bin/bash
/usr/bin/bash
/bin/rbash
/usr/bin/rbash
/usr/bin/dash
/usr/bin/screen
/usr/bin/tmux

# 打印当前环境shell是那个
root@gaga:~# echo $SHELL
/bin/bash

Shell 的用途

  • 命令执行:比如ls(Unix/Linux)或dir(Windows)列出文件。
  • 脚本编写:可以用shell脚本自动化任务,比如备份文件或批量处理数据。
  • 系统管理:控制进程、配置环境变量等。