初次接触命令行与在线求助


Linux默认的情况下会提供6个终端来让用户登录,切换的方式为:
【Ctrl + Alt + F1 ~ F6】 的组合键,系统将【F1】~【F6】命名为 tty1 ~ tty6 的操作接口环境

  • 【Ctrl + Alt + F2 ~ F6】:命令行模式登录 tty2 ~ tty6终端
  • 【Ctrl + Alt + F1】:图形用户界面模式

1.在终端登录Linux

如果按下【Ctrl + Alt + F2】组合键就可以来到 tty2 的登录界面,这个纯命令行环境的登录界面(鸟哥用dmtsai账户登录)

CentOS Linux 7 (Core)
Kernel 3.10.0-229.e17.x86_64 on an x86_64
study login:dmtsai
Password:
Last login: Fri May 29 11:55:05 on tty1
[dmtsai@study ~]$ _

1.显示Linux发行版名称(CentOS)与版本(7)

2.显示Linux内核版本 3.10.0-229.e17.x86_64,当前这台主机的硬件架构x86-64
(第一、二行内容来自于 /etc/issue这个文件中)

3.主机名全名:study.centos.vbird,但这里只取第一个小数点前面的字母即study,login:后输入账号

4.Password:输入密码

5.列出上一个此账号登录系统的时间与终端名称

6.[目前用户的账号@主机名 ~ ] dmtsai为目前用户的账号名,study是主机名,
~是指目前所在目录,$为提示字符

~ 代表“用户的家目录”的意思,是个变量,举例来说,root 的家目录在root,所以 ~ 就代表 /root 的意思,dmtsai的家目录在 /home/dmtsai,所以如果你以dmtsai登录时,它看到的 ~ 就会等于 /home/dmtsai
在Linux当中,默认 root 的提示字符为#,一般身份用户的提示符为 $

2.命令行模式下命令的执行

命令行模式登陆后所运行的程序被称为壳(Shell),这是因为这个程序负责最外面跟我们沟通,所以才被称为壳程序Linux的Shell就是Bash

2.1命令执行的方式

[dmtsai@study ~] command [-options] parameter1 parameter2 ...

1.command 为命令的名称
例如:变换工作目录的命令为 cd 等

2.中括号[ ]并不存在于命令中,表示是可选的,而加入选项设置时,通常选项前会带 — 号
例如: -h 有时候会使用选项的完整全面则选项前带 - - 符号 ,例如: - -help

3.命令 、选项、参数等中间以空格来间隔,不论空几个shell都视为一格

4.命令太长时,可用反斜杠( \ )来转义回车键(代表一行命令的开始启动),使命令连续到下一行

5.Linux系统中,英文大小写字母是不一样的

2.2基础命令的操作

  • 显示日期的命令 :date


  • 显示日历的命令 :cal

基本上 cal(calendar)命令的语法为

[dmtsai@study ~]$ cal [day] [month] [year]



  • 简单的计算器 :bc
运算符号 运算名称
+ 加法
- 减法
* 乘法
/ 除法
^ 指数
% 余数


bc默认只输出整数,如果要输出小数点后的位数,那就必须执行

scale=number

在命令行模式里面执行命令时,会有两种主要情况:

  • 一种时该命令会直接显示结果,然后回到命令提示字符等待下一个命令的输入
    (命令执行后立即显示信息且立刻回到命令提示字符的环境)

  • 一种是进入到该命令的环境,直到结束该命令才回到命令行界面的环境
    (进入软件功能的环境,那么就要使用该软件的结束命令,如上面使用bc软件的结束命令quit,才能够回到命令提示字符中)

2.3 重要的几个热键[Tab]、[Ctrl]-c、[Ctrl]-d

命令行模式中有很多的功能组合键,这些按键可以辅助我们进行命令的编写与程序的中断。

2.3.0 [Tab]按键

具有命令补全与文件补齐的功能,可以避免我们打错命令或文件名,但 [Tab]按键在不同的地方输入,会有不一样的结果

例1:
ca后连续按下两次 [Tab] [Tab]

例2:
ls -al ~ /.Bash 按两次[Tab]按键

[dmtsai@study ~]$ ls -al ~/.Bash [Tab][Tab]
.Bash_history  .Bash_logout  .Bash_profile  .Bashrc

在该目录下面所有以 .Bash为开头的文件名都会被显示出来

例3:
date - -按两次[Tab]按键

[Tab]按键的三种情况总结

  • [Tab]接在一串命令的第一个字段后面,则为命令补全
  • [Tab]接在一串命令的第二个字段后面,则为文件补齐
  • 若安装了Bash-completion软件,则在某些命令后面使用[Tab]按键时,可以进行选项/参数的补齐功能

2.3.1 [Ctrl]-c按键

有时候输入错误命令或参数,如果想让当前的程序停掉,输入[Ctrl]-c(按住[Ctrl]键不放再按下c键),那就是中断目前程序的按键

举例:

2.3.2 [Ctrl]-d按键

直接退出命令行模式,相当于exit

2.3.3 [Shift]+{[Page UP][Page Down]}按键

在命令行模式中输出信息过多时:
[Shift]+[Page Up]向前翻页
[Shift]+[Page Down]向后翻页

2.4 错误信息查看

通常出现 Command not found 的可能原因:

  • 这个命令不存在,因为该软件没有安装之故,解决方法就是安装该软件
  • 这个命令所在的目录目前的用户并没有将它加入命令查找路径中,请参考PATH说明;
  • 很简单,因为你打错字了

2.5 Linux系统的在线求助 man page 与 info page

在命令行模式下,查看以 g 开头的命令有哪些:g 后连续两次[Tab]键

2.5.0 命令的 - -help求助说明

举例:查看 date 这个命令的基本用法与选项参数的介绍

2.5.1 man page (manual)

进入 man 命令的功能后,可以按下空格键往下翻页,可以按下 q 按键来离开 man 的环境

date的在线参考手册

[dmtsai@study ~]$ man date

进入man date后输入 /date,寻找关键字date

null的在线参考手册

[dmtsai@study ~]$ man null

man的在线参考手册

[dmtsai@study ~]$ man man

上图中出现DATE(1)其中的(1)代表“一般用户可使用的命令”
在查询数据的后面的数字是有意义的,可以帮助我们了解或是直接查询相关的数据。

常见的几个数字的意义:

代号 代表内容
1 用户在shell环境中可以操作的命令或可执行文件
2 系统内核可调用的函数与工具等
3 一些常用的函数与函数库,大部分为C的函数库(libc)
4 设备文件的说明,通常在 /dev 下的文件
5 配置文件或是某些文件的格式
6 游戏
7 惯例与协议等,例如linux文件系统、网络协议、ASCII代码等的说明
8 系统管理员可用的管理命令

上表中1、5、8需要熟记

man page常用的按键:(仅在man page界面当中使用)

按键 进行工作
空格键 往下翻一页
[Page Down] 向下翻一页
[Page Up] 向上翻一页
[Home] 去到第一页
[End] 去到最后一页
/string 向下查找 string 这个字符串,如果要查找某个词的话,就输入 /某个词
?string 向上查找string这个字符串
n,N 利用 / 或 ?来查找字符串时,可以用 n 来继续下一个查找(不论时 / 或 ?),可以利用 N 来进行【反向】查找。例如:我以 /vibird 查找 vbird字符串,那么可以按下 n 继续往下查询,用 N 往上查询。若以 ?vbird 向上查询 vbird 字符串,那我可以用 n 继续【向上】查询,用 N 反向查询
q 结束这次的 man page

基本man page大致分成下面这几个部分:

代号 内容说明
NAME 简短的命令、数据名称说明
SYNOPSIS 简短的命令语法(syntax)简介
DESCRIPTION 较为完整的说明,这部分最好仔细看看
OPTIONS 针对SYNOPSIS部分中,有列举的所有可用的选项说明
COMMANDS 当这个程序(软件)在执行的时候,可以在此程序(软件)中执行的命令
FILES 这个程序或数据所使用或参考或链接到的某些文件
SEE ALSO 可以参考跟这个命令或数据有相关的其他说明
EXAMPLE 一些可以参考的范例

系统中还有哪些与【man】这个命令有关的说明文件

[dmtsai@study ~]$ man 1 man

[dmtsai@study ~]$ man 7 man


找出系统的说明文件中,只要有 man 这个关键词就将该说明列出来

whatis与apropos这两个命令是 man 的简略写法:

[dmtsai@study ~]$ whatis [命令或文件] #等价于 man -f [命令或文件]
[dmtsai@study ~]$ apropos [命令或文件] #等价于 man -k [命令或文件]

要注意,这两个特殊命令要能使用,必须要建立 whatis 数据库才行,这个数据库的建立需要以 root 的身份执行如下命令:

[dmtsai@study ~]$ mandb

不用去背命令,只需要记住几个常用的命令即可,如何查找所需要的命令??
举例:
打印的相关命令,自身仅仅记得 lp (line print)而已,那就由 man lp 开始,去找相关的说明,然后再以 lp 后按两次[Tab]按键 找到以 lp 开头的命令,找到自认为可能相关的命令,先以 - -help去查基本的用法。若有需要再以 man 去查询命令的用法

2.5.2 info page

man page 一口气输出一堆信息
info page 则将文件数据拆分成一个一个的段落,每个段落用自己的页面来编写,并且在各个页面中还有类似网页的超链接来跳到各不同的页面中,每个独立的页面被称为一个节点(Node)

2.6 documents (其他有用的文件)

说明文件所在目录 /usr/share/doc
举例:
想要知道GRUB2这个新版的启动管理程序:

[dmtsai@study ~]$ /usr/share/doc/grub2-tools-2.02

总结man 、info、documents

  • 在命令行模式中,知道命令,忘了相关选行与参数,使用【- - help】
  • 不知道命令或文件格式,使用man
  • 想要架设其他服务,或利用一整组软件完成某项功能时,使用/usr/share/doc/

3. 超简单的文本编辑器:nano

nano命令行说明列中:^代表[Ctrl] 、M代表[Alt]

使用nano打开text文本

[dmtsai@study ~]$ nano text.txt

nano中的组合按键

组合按键 功能
[Ctrl]-G 获取联机帮助
[Ctrl]-X 离开nano并提示是否需要保存
[Ctrl]-O 保存文件
[Ctrl]-R 从其他文件读入数据
[Ctrl]-W 查找字符串
[Ctrl]-C 说明目前光标所处行与列
[Ctrl]-_ 直接输入行号后,让光标快速移动到该行
[Alt]-Y 语法校验功能开启或关闭
[Alt]-M 可以支持鼠标来移动光标的功能

4. 正确关机方法

关机

[dmtsai@study ~]$ shutdown -h now #立刻关机
[dmtsai@study ~]$ shutdown -h 20:25 #今天的20:25分关机
[dmtsai@study ~]$ shutdown -h +10 #10分钟后关机
[dmtsai@study ~]$ /sbin/shutdown -h 10 #10分钟后关机
[dmtsai@study ~]$ shutdown -k now #仅仅发出警告邮件的参数,系统不会关机,吓唬人(Linux为多人多任务环境)

重启

[dmtsai@study ~]$ shutdown -r now #立刻重新开机
[dmtsai@study ~]$ shutdown -r +10 #10分钟后重新开机
[dmtsai@study ~] sync; sync; sync; reboot #sync 数据同步写入硬盘,在内存中尚未被更新的数据,就会被写入硬盘中,多做几次比较放心,reboot重启
[dmtsai@study ~]$ halt #系统停止,屏幕可能会保留系统已经停止的信息
[dmtsai@study ~]$ poweroff #系统关机,所以没有提供额外的电力,屏幕空白

知识回顾

  • 默认情况下,Linux提供 tty1 ~ tty6 的终端界面
  • 在终端环境中,$ 为一般账号 、# 为 root 账号
  • date 可显示日期、cal可现实日历、bc可作为计算器
  • [Tab]按键可作为:(1)命令补齐 (2)文件名补齐 (3)参数选行补齐,[Ctrl]-[c]可终端目前正在运行中的程序
  • Linux系统区分英文大小写
  • 联机帮助系统 man 和 info
  • man page 中的说明后的数字中,(1)代表一般账号可用命令 (5)代表系统配置文件格式 (8) 代表系统管理员常用命令
  • info page 将一份说明文件拆分成多个节点显示,并具有类似超链接的功能,增加易读性
  • 系统要正确关机,使用shutdown、poweroff等

猜你喜欢

转载自blog.csdn.net/weixin_48524215/article/details/113366623
今日推荐