The Linux Command Line 读书笔记 - 部分内容来自 http://billie66.github.io/TLCL/book/chap02.html


前言

一直听别人说过 shellshell编程,其实 shell 是什么呢?


什么是 shell

一说到命令行,我们真正指的是 shellshell 就是一个程序,它接受从键盘输入的命令, 然后把命令传递给操作系统去执行。几乎所有的 Linux 发行版都提供一个名为 bash 的 来自 GNU 项目的 shell 程序。“bash” 是 “Bourne Again SHell” 的首字母缩写, 所指的是这样一个事实,bash 是最初 Unix 上由 Steve Bourne 写成 shell 程序 sh 的增强版。

当使用图形用户界面时,我们需要另一个和 shell 交互的叫做终端仿真器的程序。 如果我们浏览一下桌面菜单,可能会找到一个。虽然在菜单里它可能都 被简单地称为 “terminal”,但是 KDE 用的是 konsole , 而 GNOME 则使用 gnome-terminal。 还有其他一些终端仿真器可供 Linux 使用,但基本上,它们都完成同样的事情, 让我们能访问 shell。也许,你可能会因为附加的一系列花俏功能而喜欢上某个终端。

概述为下面三点:

  1. shell 是一个程序,是真正意义的命令行,它为用户搭建了一个桥梁,架在用户与操作系统之间,用户通过 shell 向操作系统发送命令。
  2. linux 中的 shell 程序来自 GUN 项目,而 GUN 项目的 shell 则是 UNIX 系统上面 sh 程序的增强版。UnixGUNLinux
  3. 图形界面是无法直接使用 shell 的,但是有 终端(可能有多个不同的英文名)。终端,在图形界面与 shell 之间架起桥梁,使得图形界面用户可以使用 shell

终端



桌面上的就是一个终端(博主系统是乌班图)。

其中 yiaz@yiaz-virtual-machine:~$ 一行文字是 shell 提示符,它的出现表示 shell 准备好了,可以开始接收输入了。

提示符的格式一般是:你的用户名@主机名,紧接着是 当前工作目录:$

其中提示符中的当前工作目录,随着用户切换路径而变化;

其中最后一个字符,如果是 # 而非 $ 则代表我们的终端有 root 权限,我们可以切换到 root 用户 获取该权限 :


命令历史

当我们在终端输入命令的时候,大部分的 Linux 发行版,会默认保存 500 个命令;

可以使用方向键的上下键,进行切换到历史命令 ;


在终端中复制

在终端窗口中,使用鼠标右键或者左键双击选中的文本,则文本会被复制,再次按下鼠标中键,刚刚被复制的文本就会出现在命令行,也可以使用快捷键 :shift + insert

其中切记不可使用 WindowsCtrl C,V 进行复制粘贴 ;这两个按键早在 Windows 定义复制粘贴之前就已经被 Linux 定义了,因此,这两个按键在 Linux 中有其他含义;


一些简单的命令

关于命令,在后面的会详细的学习;

现在仅仅说几个简单的。

  1. date 打印系统时间
  2. cal 打印当前日期的日历形式
  3. df 磁盘剩余空间
  4. free 空闲内存空间
  5. exit 退出终端,即关闭终端




隐藏的终端

即使终端仿真器没有运行,在后台仍然有几个终端会话运行着。它们叫做 虚拟终端 或者是 虚拟控制台。在大多数 Linux 发行版中,这些终端会话都可以通过按下 Ctrl-Alt-F1Ctrl-Alt-F6 访问。当一个会话被访问的时候, 它会显示登录提示框,我们需要输入用户名和密码。要从一个虚拟控制台转换到另一个, 按下 AltF1-F6(中的一个)。返回图形桌面,按下 Alt-F7

但是上面的命令不是在所有的 Linux 发行版中都奏效;

例如,博主的 Ubuntu 系统,上述命令就无效,对应的功能分别如下:

  1. ctrl + alt + F1 锁屏
  2. alt + F2 从虚拟终端切回桌面
  3. ctrl + alt + F3 -F6 虚拟终端(一共有4个)
  4. alt + F3 - F6 切换虚拟终端

(零)linux 学习 -- 从 shell 开始的更多相关文章

  1. Linux 学习 (八) Shell

    Linux达人养成计划 I 学习笔记 Shell 是什么: Shell 是一个命令解释器 Shell 还是一个功能相当强大的编程语言,易编写,易调试,灵活性较强 Shell 的分类: Bourne S ...

  2. linux 学习10 shell 基础

    10.1 Shell概述 .Shell是什么 Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动.挂起.停止甚至是编写一 ...

  3. (原创)鸟哥linux学习script shell相关笔记

    在使用鸟哥linux进行script shell学习的过程中碰到一些不太明白的知识点,在这里进行一些记录 1. [root@www scripts]# vi sh03.sh #!/bin/bash # ...

  4. Linux学习——自定义shell终端提示符

    转自:here 我使用的Linux发行版是LinuxMint 17.2 Rafaela,默认情况下Terminal中的shell提示包括了用户名.主机名.当前目录(绝对路径)和提示符.这样会导致当进入 ...

  5. linux 学习随笔-shell基础知识

    1:用户的shell历史命令保存在home/username/.bash_history中 #!!  执行用户的上一条命令 #!pw  执行命令历史中最近一次以pw开头的命令 2:'*'来匹配零或多个 ...

  6. Linux学习之Shell编程基础

    转自:http://my.oschina.net/itblog/blog/204410 1 语法基本介绍1.1 开头 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来 ...

  7. linux学习总结----shell编程

    ## 环境变量 ## 全局变量 ``` 常见的全局环境变量 PATH 指令的搜索路径 HOME 用户的家目录 LOGNAME 登录名 SHELL 脚本的类型 使用全局环境变量 echo $PATH 自 ...

  8. (六)linux 学习 -- 从 shell 眼中看世界

    The Linux Command Line 读书笔记 - 部分内容来自 http://billie66.github.io/TLCL/book/chap08.html 文章目录 字符展开 `*` 路 ...

  9. linux/linux学习笔记-Shell基础(mooc)

    一.shell概述 shell根据ascII表,将命令翻译为0101...传给内核执行. 内核->shell翻译为命令->用户(操作的界面就是shell,shell=翻译官) linux标 ...

随机推荐

  1. ZR#985

    ZR#985 解法: 可以先假设每个区间中所有颜色都出现,然后减掉多算的答案.对每种颜色记录它出现的位置,则相邻两个位置间的所有区间都要减去,时间复杂度 $ O(n) $ . 其实可以理解为加法原理的 ...

  2. PHP-FPM远程代码执行漏洞(CVE-2019-11043)

    0x00 简介 在长亭科技举办的 Real World CTF 中,国外安全研究员 Andrew Danau 在解决一道 CTF 题目时发现,向目标服务器 URL 发送 %0a 符号时,服务返回异常, ...

  3. OpenFOAM当中物性参数的设置

    固体当中物性参数的设置: FoamFile { version 2.0; format ascii; class dictionary; object thermophysicalProperties ...

  4. Unity2017 熊猫跑酷

    1.背景 随着移动互联网的快速发展,现在的人们对手机的依赖程度越来越大,以至于为于手机用户量身定做的手机游戏大行其道.正是基于这样的背景,城市跑酷--这个好玩的游戏诞生了 2.机遇 手机触屏时代的到来 ...

  5. 阿里云 商标 SAAS

    商标注册-注册商标查询-商标交易平台-阿里云商标https://tm.aliyun.com/#/ 阿里云商标查询入口-云栖社区-阿里云https://yq.aliyun.com/articles/69 ...

  6. django实战总结2

    https://www.jianshu.com/p/9b3bfe934511 https://www.cnblogs.com/1Q84mi/p/xadmin002.html https://blog. ...

  7. IDEA 修改某个Module名称

    一.选择module右键——>Refactor——>Rename 二.修改该module下的pom.xml文件对应module名改掉 三.修改项目的pom文件中modules里的modul ...

  8. declaration of 'int ret' shadows a parameter

    定义的变量名称重复, 例如: int look_up_max(int m, int n) {   int m; //... return m; }

  9. pyenv、virtualenv、virtualenvwrapper三种python多版本介绍

    今天有把此前接触过的三种python实现多版本环境用到的软件pyenv.virtualenv.virtualenvwrapper,了解了一番,现做如下总结: 一.pyenv: 是针对python多版本 ...

  10. PL/SQL developer 开发小技能 and ash show command PL/SQL EXECUTE 以及注释

    ##sample  test windows 调试存储过程, 总体指导思想使用pl/sql test windows 调试存储过程,存储过程调试 可以用  run  to next exception ...