Linux——终端

一、终端

1、终端是什么

终端最初是指终端设备(Terminal),它是一种用户与计算机系统进行交互的硬件设备。在早期的计算机系统中,终端通常是一台带有键盘和显示器的电脑,用户通过它输入命令,计算机在执行命令后将结果显示在终端的屏幕上。随着技术发展,"终端"的概念也经历了一定的演变。

现代操作系统中的"终端"一词通常指的是终端仿真器(Terminal Emulator),它是一种软件,模拟了传统硬件终端的功能,允许用户通过图形界面与系统的命令行接口进行交互。用户可以在终端仿真器中输入命令,由操作系统执行,并在同一界面中显示输出结果。

Linux终端是Linux操作系统中的一个终端仿真器。Linux终端提供了一个文本界面,用户可以通过它访问Linux的shell。Shell是一个命令行界面,用于与操作系统内核进行通信,执行用户的命令。Linux终端允许用户执行各种操作,包括文件管理、软件安装和运行、系统配置和管理等。

2、shell是什么

1)shell是什么

Shell确实是一种命令行解释器。它为用户提供了一个界面,用于向操作系统输入命令。操作系统接收这些命令后,Shell会解释并执行它们,然后将结果返回给用户。Shell既是命令语言的解释器,也是一个提供用户与操作系统交互能力的程序。

在不同的操作系统中,Shell可能指代不同的东西,但在Unix和类Unix系统(如Linux)中,它特指那些提供用户命令行接口的程序。这些程序允许用户通过键入命令来管理文件系统、运行程序、以及访问操作系统的核心功能。

2)shell工作原理

简单地来说,在我们输入某个指令并回车后,shell就会解析这个指令,然后寻找与这个命令同名的可执行文件,运行它,然后就会打印返回结果。

3)Linux有哪些shell

/bin/sh

/bin/bash

/usr/bin/sh

/usr/bin/bash

/bin/tcsh

/bin/csh

Ksh (Korn Shell):是Bourne Shell的扩展,提供了许多高级特性和脚本编程功能。

Zsh (Z Shell):基于ksh发展出来的,提供了许多用户友好的特性,如主题和插件支持,因此在开发者中非常受欢迎。

这里详细介绍一下 Bash :

"Bash" 的名称其实是 "Bourne Again SHell" 的缩写。一种俏皮的命名方式,意味着这是对原始 Bourne shell (sh) 的一个增强版。或者说是一种双关( Bourne again / born again )。 Bash 是一个为 GNU 项目编写的免费软件替代品,Bash是基于先前的Bourne Shell(sh)设计的,但加入了许多新特性和改进,使其更加强大和易用。Bash 随着 GNU 项目的推广而广泛流行,成为了许多Linux发行版以及macOS的默认命令行接口。

4)查看当前操作系统中的shell有哪些

当前操作系统有的 shell 一般列在 /etc/shells 文件中,可以用 cat 指令查看:

5)查看当前使用的shell

使用 echo $SHELL 指令返回当前使用的 shell :

二、命令

1、使用 tab 键对命令进行补全

比如要使用 echo 命令,我们可以输入 ech ,这时只有 echo 这一个指令是以 ech 开头的,然后按 tab 键,就可以补全指令:

如果只输入 ec ,然后按 tab 键,就不会补全,因为以 ec 开头的指令有多个,这时再按一次 tab 键就会列出所有以 ec 开头的指令,以供你选择:

相关推荐
Starry-sky(jing)40 分钟前
Win11 装 ESP32 Arduino 库卡 3 小时?我把官方 3.3.10 全平台 522MB 搬到了蓝奏云,解压即用
运维·windows·esp32·arduino·离线安装
小此方2 小时前
Re:Linux系统篇(四十二)通信篇·七:SystemV标准三部曲其之三:信号量与并发编程初步认识
linux·运维·驱动开发
画中有画8 小时前
使用yolov8实现自动化脚本
运维·yolo·自动化
Piko61410 小时前
H3C IRF2 堆叠实战:打造高可靠核心交换网络
运维·网络·笔记
JAVA面经实录91710 小时前
Linux 常用命令完整知识体系
java·linux·开发语言·汇编
万联WANFLOW13 小时前
SD-WAN 控制平面高可用怎么做?SDWAN 控制器挂了,全网会发生什么
运维·网络·分布式·架构
酱学编程14 小时前
【从零到一实现一个 AI Agent 框架 · 第四篇】04. 任务规划:拆解复杂目标 -
服务器·网络·数据库·人工智能
SkyWalking中文站15 小时前
认识 Horizon UI · AI Assistant:用日常语言查询你的可观测性数据
运维·监控·自动化运维
艾莉丝努力练剑16 小时前
OpenCode AI 编程:Ubuntu 24.04 环境安装与使用指南
linux·服务器·网络·人工智能·tcp/ip·ubuntu
崇山峻岭之间16 小时前
Keil5输出hex转换为bin的设置
linux·运维·服务器