[笔记]快乐的Linux命令行《一》Linux系统以及什么是shell

简介: [笔记]快乐的Linux命令行《一》Linux系统以及什么是shell

系列文章目录

[笔记]快乐的Linux命令行《一》LInux系统简介以及什么是shell

该系列已转移到掘金,请博友自行访问

前言

Linux 是以 Unix 家族的操作系统为模型写成的,所以它分享了 Unix 丰富的命令行工具。Unix 在 20 世纪 80 年代初显赫一时 (虽然,开发它在更早之前),结果,在普遍地使用图形界面之前,开发了一种广泛的命令行界面。事实上,很多人选择 Linux(而不是其他的系统,比如说 Windows NT)是因为其强大的命令行界面,可以使“完成复杂的任务成为可能”。

一、Linux起源与发展

Unix是最早的操作系统,由Unix发展而来的计算机操作系统不计其数 而Linux是其中一种。

Linux诞生以后 衍生出了许多版本 常见的有 例如 Ubuntu,CentOs,RedHad,Kali,Debian,Fedora.

主要由两个分支:

  • Redhat系列
    代表作:CentOS ,Fedora
    完全开源,主要用于服务器版本
  • Debain系列
    代表作:Ubantu,Kali ,Arch
    视觉界面量化的linux系统
    一些主流的软件都支持Ubantu

现在,大多数的计算机用户只是熟悉图形用户界面(GUI),并且产品供应商和此领域的学者会灌输给用户这样的思想,命令行界面(CLI)是过去使用的一种很恐怖的东西。这就很不幸,因为一个好的命令行界面,是用来和计算机进行交流沟通的非常有效的方式,正像人类社会使用文字互通信息一样。人们说,“图形用户界面让简单的任务更容易完成,而命令行界面

使完成复杂的任务成为可能”,到现在这句话仍然很正确。

因为 Linux 是以 Unix 家族的操作系统为模型写成的,所以它分享了 Unix 丰富的命令行工具。Unix 在 20 世纪 80 年代初显赫一时 (虽然,开发它在更早之前),结果,在普遍地使用图形界面之前,开发了一种广泛的命令行界面。事实上,很多人选择 Linux(而不是其他的系统,比如说 Windows NT)是因为其强大的命令行界面,可以使“完成复杂的任务成为可能”。

二、什么是shell

1.什么是Shell

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

常见的Shell程序:

  • bash
  • dash
  • tcsh
  • sh
  • csh
  • ksh
  • tclsh
  • zsh
  • wish

它们对应运行.sh脚本文件

2.终端仿真器

我们常常使用终端仿真器(Terminal),去和 shell 交互, 让我们能访问 shell。

如下 CentOs7 桌面右键打开终端的样式:

常见的终端:

  • gnome-terminal (基于GNOME界面的终端 例如CentOs7,Ubuntu都用这个 )
  • KDE(konsole 程序)

如下图,CentOs7 终端界面:

3. 第一次按键

打开终端仿真器之后,我们就可以开始输入命令行乐

shell 提示符

[me@linuxbox ~]$

以上皆为shell提示符。

[你的用户名 @ 主机名 当前工作目录] $

~: 表示当前用户的个人目录,比如 /home/shiver 就是shiver用户的个人目录 而~表示简写

root用户 个人目录即/root目录

$: 普通用户权限,

#: 如果提示符的最后一个字符是“#”, 而不是“$”, 那么这个终端会话就有超级用户(root)权限。

这意味着,我们或者是以根用户(root)的身份登录,或者是我们选择的终端仿真器提供超级用户(管理员)权限

随便键入一些字符

提示 命令没有找到 这是正常的因为我们并未输出任何命令。

4. 命令历史

按下上箭头按键 查看历史命令:按下上箭头按键,我们会看到刚才输入的命令“zxxcasday”重新出现在提示符之后。

另外

history 命令 也可以 查看最近一定数量的历史命令行

许多 Linux 发行版默认保存最后输入的 500 个命令。

按下 下箭头按键,先前输入的命令就消失了。

5. 移动光标

上箭头按键: 获得上次输入的命令

下箭头按键: 表示下一个输入命令,如果没有则为空,如果使用连续 按键上 两次,则按下 下按键则表示从上上次命令返回 即上一次命令。

左箭头按键:光标向左移动一个字符的距离

右箭头按键:光标向右移动一个字符的距离

常见组合键:

ctrl+左/右:向左或向右 移动一个单词的距离

6. 关于鼠标和光标

1.想高亮一些文本,可以按下鼠标左键,沿着文本拖动鼠标(或者双击一个单词),那么这些高亮的文本就被拷贝到了一个由 X 管理的缓冲区里面。然后按下鼠标中键,这些文本就被粘贴到光标所在的位置。

2.鼠标左键点击表示激活窗口为活动窗口,而非windows系统的将光标聚焦在某一点

注意:不要在一个终端窗口里,使用 Ctrl-c 和 Ctrl-v 快捷键,来执行拷贝和粘贴操作。它们不起作用。

对于 shell 来说,这些控制代码有着不同的含义,它们被赋值,早于 MicrosoftWindows 许多年。

Ctrl-c :表示终止命令的执行

7. 试试运行一些简单命令

第一个命令是 date

这个命令显示系统当前时间和日期

[me@linuxbox ~]$ date
Thu Oct 25 13:51:54 EDT 2007

相关命令 cal

它默认显示当前月份的日历

[me@linuxbox ~]$ cal
October 2007
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

命令 df

查看磁盘剩余空间的数量

[me@linuxbox ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 15115452 5012392 9949716 34% /
/dev/sda5 59631908 26545424 30008432 47% /home
/dev/sda1 147764 17370 122765 13% /boot
tmpfs 256856 0 256856 0% /dev/shm

命令free

显示空闲内存的数量,输入命令 free。

[me@linuxbox ~]$ free
total used free shared buffers cached
Mem: 2059676 846456 1213220 0
44028 360568
-/+ buffers/cache: 441860 1617816
Swap: 1042428 0 1042428

8. 结束终端会话

以终止一个终端会话方式:

1.关闭终端仿真器窗口(右上角的X)

2.在 shell 提示符下输入 exit命令

[me@linuxbox ~]$ exit

exit也可以表示退出当前用户 例如root用户时,exit则返回普通用户权限界面

9. 幕后控制台

即使,终端仿真器没有运行,几个终端会话仍然在后台运行着。它们叫做虚拟终端或者是虚拟控制台

在大多数 Linux 发行版中,这些终端会话都可以访问,按下 Ctrl-Alt-F1 到Ctrl-Alt-F6 访问不同的虚拟终端。

当一个会话被访问的时候,它会显示登录提示框,我们需要输入用户名和密码。

从一个虚拟控制台转换到另一个,按下 Alt 和 F1-F6。

返回图形桌面,按下 Alt-F7。

总结

以上就是今天要讲的内容,本文仅仅简单介绍了linux命令行的使用。

参考:

shells 概念

centOS7中的几个Ctrl+组合

相关文章
|
4天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
22 3
|
4天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
17 2
|
4天前
|
安全 网络协议 Linux
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。通过掌握 ping 命令,读者可以轻松测试网络连通性、诊断网络问题并提升网络管理能力。
21 3
|
7天前
|
安全 Linux 数据安全/隐私保护
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。本文介绍了使用 `ls -l` 和 `stat` 命令查找文件所有者的基本方法,以及通过文件路径、通配符和结合其他命令的高级技巧。还提供了实际案例分析和注意事项,帮助读者更好地掌握这一操作。
24 6
|
7天前
|
Linux
在 Linux 系统中,`find` 命令是一个强大的文件查找工具
在 Linux 系统中,`find` 命令是一个强大的文件查找工具。本文详细介绍了 `find` 命令的基本语法、常用选项和具体应用示例,帮助用户快速掌握如何根据文件名、类型、大小、修改时间等条件查找文件,并展示了如何结合逻辑运算符、正则表达式和排除特定目录等高级用法。
33 6
|
8天前
|
机器学习/深度学习 自然语言处理 Linux
Linux 中的机器学习:Whisper——自动语音识别系统
本文介绍了先进的自动语音识别系统 Whisper 在 Linux 环境中的应用。Whisper 基于深度学习和神经网络技术,支持多语言识别,具有高准确性和实时处理能力。文章详细讲解了在 Linux 中安装、配置和使用 Whisper 的步骤,以及其在语音助手、语音识别软件等领域的应用场景。
37 5
|
8天前
|
监控 网络协议 算法
Linux内核优化:提升系统性能与稳定性的策略####
本文深入探讨了Linux操作系统内核的优化策略,旨在通过一系列技术手段和最佳实践,显著提升系统的性能、响应速度及稳定性。文章首先概述了Linux内核的核心组件及其在系统中的作用,随后详细阐述了内存管理、进程调度、文件系统优化、网络栈调整及并发控制等关键领域的优化方法。通过实际案例分析,展示了这些优化措施如何有效减少延迟、提高吞吐量,并增强系统的整体健壮性。最终,文章强调了持续监控、定期更新及合理配置对于维持Linux系统长期高效运行的重要性。 ####
|
12天前
|
缓存 监控 Linux
|
15天前
|
Linux Shell 数据安全/隐私保护