Linux 里的 TTY、Terminal、Shell、Console 傻傻分不清... - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
jmyz0455
V2EX    Linux

Linux 里的 TTY、Terminal、Shell、Console 傻傻分不清...

  •  
  •   jmyz0455 2016-09-20 10:11:41 +08:00 5817 次点击
    这是一个创建于 3380 天前的主题,其中的信息可能已经有所发展或是发生改变。

    初学 Linux ,虽然会用但是分不清 TTY 、 Terminal 、 Shell 、 Console 各种的原理和区别。网上大多答案只是嗦嗦回答了是什么,但是没有说不同点,搞得我更乱了。有深明大义的大神深入浅出地解答一下吗?

    13 条回复    2016-09-21 12:14:02 +08:00
    FurN1
        2
    FurN1  
       2016-09-20 10:47:44 +08:00
    啊,这种问题不需要大神回答,就由我这个初学者回答吧

    Terminal 这个应用里面运行的带字的东西是 Shell (相对于 Kernel 的可以由你控制的部分),每打开一个 Terminal 窗口就是等着你做点什么,这个窗口或者 tab 要编号,从 tty000 编起。你输入一个 ps 的指令就看到了。

    Console 是针对程序的定义……比如你用 terminal 开了一个 Minecraft 的服务器,这个服务器程序开始运行之后, terminal 窗口里就出现一行行更新的东西,最后一行还有一个“>”这样的待命符可以让你输入命令 op 玩家这样的界面就是这个服务器的 console 。很多软件里面都有 console ,尤其是科学计算软件里。
    FurN1
        3
    FurN1  
       2016-09-20 10:48:24 +08:00
    @IgniteWhite 不好意思是 ttys000
    imn1
        4
    imn1  
       2016-09-20 11:22:53 +08:00
    Terminal 是软件概念(tty 是狭义的 Teminal)
    终端本身就是一个软件工具,可理解为它模拟命令行环境运行, tty 指文字输入输出,但终端不纯粹是文字输入输出,在 windows 类比(你说初学,估计接触 windows 多)就是 cmd
    称为 Console 的图形化模拟器可能容易理解些

    Shell 是原生概念
    它是指命令组成,而不是具体实现这些命令的工具 /环境, windows 类比就是“ DOS 命令”(注意是命令,不是 DOS ,可以运行 DOS 命令的工具其实很多,不仅 cmd )

    Console 是功能概念
    在软件层面就是一个控制器,例如 sublimetext, 浏览器的 js 解析器都有控制台输出,但在系统层面,如 linux ,它就是非图形界面的命令运行器, windows 所说的开机直接进入 dos 也是这个意思
    julyclyde
        5
    julyclyde  
       2016-09-20 11:36:23 +08:00
    terminal 是硬件概念。软件的叫 terminal emulator
    上述外设和电脑相连的时候,电脑这边的统一接口叫 tty ,后来虚化为 pty
    jmyz0455
        6
    jmyz0455  
    OP
       2016-09-20 16:52:24 +08:00
    @7sDream 没搜过知乎,第二个真详细。请问这个问题也可以解答一下吗 [NT 3.X 以后的 Windows 里, DOS 、 CMD 、 Batch 、 PowerShell 的关系是?]( t/307585)
    jmyz0455
        7
    jmyz0455  
    OP
       2016-09-20 16:55:28 +08:00
    @IgniteWhite 好像一楼的答案更严谨一点,谢谢啦,请问这个问题也可以解答一下吗 t/307585
    Cabana
        8
    Cabana  
       2016-09-20 19:22:55 +08:00 via Android
    linux 萌新也问一下, bash 是跟 shell 同阶的吗?还是说是 shell 的一个子集?
    hitmanx
        9
    hitmanx  
       2016-09-20 20:32:27 +08:00
    eoo
        10
    eoo  
       2016-09-20 23:05:49 +08:00 via Android
    @Cabana shell 有很多种, bash 只是 Linux 中默然使用的 shell
    franklinyu
        11
    franklinyu  
       2016-09-20 23:30:05 +08:00
    得 Bash = shell 的一定 /bin/sh ,/bin/ash ,/bin/csh ,/bin/tcsh ,/bin/zsh ……
    okudayukiko0
        12
    okudayukiko0  
       2016-09-21 00:24:37 +08:00
    TTY 约等于 Console
    Terminal=Console
    早期的 Unix 是没有显卡和显示屏的
    后来有了显卡和显示器,文本界面就称为终端( Terminal )
    Shell 吗, OS 的操作界面就是 Shell ,包括 GNOME , BASH ...不过大家所讲的 Shell 一般指命令行 BASH 。
    BASH 是 Linux 里最常见的命令行 Shell ,除此外还有 ZSH , TCSH 等。
    https://zh.wikipedia.org/wiki/%E7%B5%82%E7%AB%AF
    https://zh.wikipedia.org/wiki/Getty_(Unix)
    https://zh.wikipedia.org/wiki/%E6%AE%BC%E5%B1%A4
    https://zh.wikipedia.org/wiki/Bash
    KingsWay
        13
    KingsWay  
       2016-09-21 12:14:02 +08:00
    还有 pty 、 pts 。。。。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1102 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 23:04 PVG 07:04 LAX 15:04 JFK 18:04
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86