(零)linux 学习 -- 从 shell 开始
The Linux Command Line 读书笔记 - 部分内容来自 http://billie66.github.io/TLCL/book/chap02.html
前言
一直听别人说过 shell
,shell编程
,其实 shell
是什么呢?
什么是 shell
一说到命令行,我们真正指的是 shell
。shell
就是一个程序,它接受从键盘输入的命令, 然后把命令传递给操作系统去执行。几乎所有的 Linux
发行版都提供一个名为 bash
的 来自 GNU
项目的 shell
程序。“bash”
是 “Bourne Again SHell
” 的首字母缩写, 所指的是这样一个事实,bash
是最初 Unix
上由 Steve Bourne
写成 shell 程序 sh
的增强版。
当使用图形用户界面时,我们需要另一个和 shell
交互的叫做终端仿真器的程序。 如果我们浏览一下桌面菜单,可能会找到一个。虽然在菜单里它可能都 被简单地称为 “terminal”
,但是 KDE
用的是 konsole
, 而 GNOME
则使用 gnome-terminal
。 还有其他一些终端仿真器可供 Linux
使用,但基本上,它们都完成同样的事情, 让我们能访问 shell
。也许,你可能会因为附加的一系列花俏功能而喜欢上某个终端。
概述为下面三点:
shell
是一个程序,是真正意义的命令行,它为用户搭建了一个桥梁,架在用户与操作系统之间,用户通过shell
向操作系统发送命令。linux
中的shell
程序来自GUN
项目,而GUN
项目的shell
则是UNIX
系统上面sh
程序的增强版。Unix
→GUN
→Linux
。- 图形界面是无法直接使用
shell
的,但是有 终端(可能有多个不同的英文名)。终端,在图形界面与shell
之间架起桥梁,使得图形界面用户可以使用shell
。
终端
桌面上的就是一个终端(博主系统是乌班图)。
其中 yiaz@yiaz-virtual-machine:~$
一行文字是 shell
提示符,它的出现表示 shell
准备好了,可以开始接收输入了。
提示符的格式一般是:你的用户名@主机名,紧接着是 当前工作目录:$
;
其中提示符中的当前工作目录,随着用户切换路径而变化;
其中最后一个字符,如果是 #
而非 $
则代表我们的终端有 root
权限,我们可以切换到 root
用户 获取该权限 :
命令历史
当我们在终端输入命令的时候,大部分的 Linux
发行版,会默认保存 500
个命令;
可以使用方向键的上下键,进行切换到历史命令 ;
在终端中复制
在终端窗口中,使用鼠标右键或者左键双击选中的文本,则文本会被复制,再次按下鼠标中键,刚刚被复制的文本就会出现在命令行,也可以使用快捷键 :shift + insert
;
其中切记不可使用 Windows
的 Ctrl C,V
进行复制粘贴 ;这两个按键早在 Windows
定义复制粘贴之前就已经被 Linux
定义了,因此,这两个按键在 Linux
中有其他含义;
一些简单的命令
关于命令,在后面的会详细的学习;
现在仅仅说几个简单的。
date
打印系统时间cal
打印当前日期的日历形式df
磁盘剩余空间free
空闲内存空间exit
退出终端,即关闭终端
隐藏的终端
即使终端仿真器没有运行,在后台仍然有几个终端会话运行着。它们叫做 虚拟终端 或者是 虚拟控制台。在大多数 Linux
发行版中,这些终端会话都可以通过按下 Ctrl-Alt-F1
到 Ctrl-Alt-F6
访问。当一个会话被访问的时候, 它会显示登录提示框,我们需要输入用户名和密码。要从一个虚拟控制台转换到另一个, 按下 Alt
和 F1-F6
(中的一个)。返回图形桌面,按下 Alt-F7
。
但是上面的命令不是在所有的 Linux
发行版中都奏效;
例如,博主的 Ubuntu
系统,上述命令就无效,对应的功能分别如下:
ctrl + alt + F1
锁屏alt + F2
从虚拟终端切回桌面ctrl + alt + F3 -F6
虚拟终端(一共有4个)alt + F3 - F6
切换虚拟终端
(零)linux 学习 -- 从 shell 开始的更多相关文章
- Linux 学习 (八) Shell
Linux达人养成计划 I 学习笔记 Shell 是什么: Shell 是一个命令解释器 Shell 还是一个功能相当强大的编程语言,易编写,易调试,灵活性较强 Shell 的分类: Bourne S ...
- linux 学习10 shell 基础
10.1 Shell概述 .Shell是什么 Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动.挂起.停止甚至是编写一 ...
- (原创)鸟哥linux学习script shell相关笔记
在使用鸟哥linux进行script shell学习的过程中碰到一些不太明白的知识点,在这里进行一些记录 1. [root@www scripts]# vi sh03.sh #!/bin/bash # ...
- Linux学习——自定义shell终端提示符
转自:here 我使用的Linux发行版是LinuxMint 17.2 Rafaela,默认情况下Terminal中的shell提示包括了用户名.主机名.当前目录(绝对路径)和提示符.这样会导致当进入 ...
- linux 学习随笔-shell基础知识
1:用户的shell历史命令保存在home/username/.bash_history中 #!! 执行用户的上一条命令 #!pw 执行命令历史中最近一次以pw开头的命令 2:'*'来匹配零或多个 ...
- Linux学习之Shell编程基础
转自:http://my.oschina.net/itblog/blog/204410 1 语法基本介绍1.1 开头 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来 ...
- linux学习总结----shell编程
## 环境变量 ## 全局变量 ``` 常见的全局环境变量 PATH 指令的搜索路径 HOME 用户的家目录 LOGNAME 登录名 SHELL 脚本的类型 使用全局环境变量 echo $PATH 自 ...
- (六)linux 学习 -- 从 shell 眼中看世界
The Linux Command Line 读书笔记 - 部分内容来自 http://billie66.github.io/TLCL/book/chap08.html 文章目录 字符展开 `*` 路 ...
- linux/linux学习笔记-Shell基础(mooc)
一.shell概述 shell根据ascII表,将命令翻译为0101...传给内核执行. 内核->shell翻译为命令->用户(操作的界面就是shell,shell=翻译官) linux标 ...
随机推荐
- [WEB安全]绕过URL跳转限制的思路
0x00 简介 说起URL跳转漏洞,有些人可能会觉得,不就是单纯的跳转到某一个其他网页吗?有什么用??? 给大家一个链接,你们进去看一下就明白了: http://www.anquan.us/searc ...
- mysql忘记密码恢复
MySQL忘记密码恢复密码的实现方法 作者:mdxy-dxy 流传较广的方法,mysql中文参考手册上的,各位vps主机租用客户和服务器托管用户忘记mysql5.1管理员密码时,可以使用这种方法破解下 ...
- python定制后处理云图
用后处理软件处理的云图会出现这样或那样的不满意,其实我们可以将求解数据导出以后,借助python定制云图. 我们以fluent为例 求解完成之后,我们将我们需要做云图的物理量以ASCII导出 如下的p ...
- java 静态数组 和非静态数组的区别
区别:1,数组创建时间不同,静态的是一定义出来就创建了,动态的则是定义时不创建,使用时才创建,一定意义上节省了内存空间.2,使用场景不同,一开始就知道数组长度的使用静态初始化,反之,动态初始化. 静态 ...
- ActiveMq 本地安装及启动(Windows)
首先下载MQ的安装包 http://activemq.apache.org/download.html 1.点击最新版本的ActiveMQ的 2.这里有窗户版本和Linux的的版本,这里我们选择窗口版 ...
- expdp导出卡住问题诊断
本文链接:https://blog.csdn.net/guogang83/article/details/78800487 [oracle@database ~]$nohup expdp gg/gg ...
- Linux-IIC驱动(详解)
IIC接口下的24C02 驱动分析: http://www.cnblogs.com/lifexy/p/7793686.html 接下来本节, 学习Linux下如何利用linux下I2C驱动体系结构来操 ...
- HmacSHA256摘要算法2 MACCoder
消息摘要算法分为三类: MD(Message Digest):消息摘要 SHA(Secure Hash Algorithm):安全散列 MAC(Message Authentication Code) ...
- 负载均衡服务TCP端口健康检查成功,为什么在后端业务日志中出现网络连接异常信息?
负载均衡服务TCP端口健康检查成功,为什么在后端业务日志中出现网络连接异常信息? 原文: https://help.aliyun.com/document_detail/127193.html?spm ...
- 关于微信手机端IOS系统中input输入框无法输入的问题
如果网站不需要阻止用户的选择内容的行为就可以使用如下样式: * { -webkit-user-select: text; -user-select: text;}另一种方式: *: not(input ...