Linux基础知识——命令行模式下命令的执行

文章目录

  • Linux基础知识——命令行模式下命令的执行
    • 开始执行Linux命令
      • Linux基础命令的操作
      • 常用Linux命令行操作按键
      • Linux输出错误信息查看
    • Linux系统在线帮助
      • --help选项
      • man命令
      • info命令
      • 其他有用的文件文档
      • 百度搜索
    • 文本编辑器:nano
      • nano启动!
    • 正确关机方法
      • ①首先观察系统的使用状态
      • ②通知在线用户关机
      • ③数据同步关机

Linux基础知识——命令行模式下命令的执行

操作系统中,命令行模式登录后的程序被称为(Shell)。壳是操作系统提供给用户与系统进行交互的一种方式,它充当用户与操作系统内核之间的接口,负责解释用户输入的命令并将其传递给内核执行

开始执行Linux命令

可以这样执行命令

[root@chenshiren ~]# command [-options] parameter1 parameter2 .....
  • 一行命令的第一个输入部分应该是命令(command)或可执行文件(shell)的名称

  • 中括号[]用来表示可选项,加入选项设置时,通常会在选项前加上-号,例如-h。有时候,选项的完整全名会使用--符号,例如--help

  • 参数通常跟在选项后面,或者是命令本身的参数

  • 命令、选项和参数之间使用空格来进行分隔。无论有多少个空格,Shell都会将其视为一个空格

[root@chenshiren ~]# ls           -a和ls -a命令是相同的
  • 按下回车键表示要执行该命令

  • 如果命令太长,可以使用反斜杠\来转义回车键,将命令连续到下一行

[root@chenshiren ~]# ls -a \
> -l
  • 在Linux系统中,英文小写字母是不一样的,例如date( 显示日期与时间的命令)与DATE并不同
[root@chenshiren ~]# date  #显示日期和时间
[root@chenshiren ~]# DATE  #显示找不到命令
[root@chenshiren ~]# Date  #显示找不到命令

Linux基础命令的操作

显示日期与时间的命令:date

输入date即可知道Linux的系统时间

[root@chenshiren ~]# date
2024年 02月 23日 星期五 21:01:04 CST
# 时间信息表示的是2024年2月23日 星期五 21点01分04秒
# 使用的时区是中国标准时间(CST)

如果你只想显示2024年 02月 23日可以使用date的格式化输出功能

[root@chenshiren ~]# date +%Y年%m月%d日
2024年02月23日

若只想输出21:01:04

[root@chenshiren ~]# date +%H时%M分
21时03分

显示日历的命令:cal

查看这个月的日历

可以看到今日所在日期会泛白显示

image-20240223211009083

显示整年的日历

image-20240223211221376

显示2023年10月日历

image-20240223211358126

== 简单的计算机:bc==

符号名称
+加法
-减法
*乘法
/除法
^指数
%余数

简单使用一下bc计算器

[root@chenshiren ~]# bc
bc 1.07.1
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006, 2008, 2012-2017 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
1+999
1000
520*1314
683280
1314/520   # 这里计算等于2是因为没有设置参数,bc计算器默认只输出整数
2
quit       # 离开计算器

如果要输出小数点后后几位,输入bc然后加上scale=number(计算到小数点后几位)命令就行了

[root@chenshiren ~]# bc
bc 1.07.1
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006, 2008, 2012-2017 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
scale=5
1314/520
2.52692     
quit

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

  • 一种是该命令直接显示结果,然后回到命令提示符等待下一次命令输入;

    image-20240223213531470

  • 一种是进入该命令的环境,直到结束该命令才回到命令行界面;

    image-20240223213630675

你只要看到光标在【[root@chenshiren ~]#】这种提示符后面,那就是等待输入命令的环境

常用Linux命令行操作按键

Linux命令行模式里面有很多的功能组合键,这些按键可以辅助我们进行命令的编写与程序的中断,以下是比较常用的命令行操作安装

Tab键 (Tab Completion)

  • 功能:自动补全命令、文件名或路径。
  • 使用方法:在命令行中输入部分内容,按下Tab键可自动补齐;双击Tab键显示所有匹配项

例如:你忘记显示时间和日期(date)的命令了

[root@chenshiren ~]# da[tab]  
# 输入da 按下tab,按一下自动补齐,按两下显示所有匹配项

Ctrl+C (中断信号)

  • 功能:中断当前运行的程序。
  • 使用方法:在终端中按下Ctrl+C即可发送中断信号,强制终止程序执行

例如:假如你输入了【find /】

[root@chenshiren ~]# find / 
# 输入然后回车后屏幕会输出一堆东西,你只有按下ctrl+c才会停止

Ctrl+D (EOF或退出)

  • 功能:发送EOF信号表示输入结束;退出当前Shell会话。
  • 使用方法:按下Ctrl+D表示输入结束;在命令行中想要退出当前Shell会话时,也可以使用Ctrl+D来退出(相当于输入exit)

【Shift+Page Up】和【Shift+Page Down】相当于鼠标滚轮

  • Shift + Page Up:向上滚动终端显示的内容,相当于向上翻页查看之前的输出内容。
  • Shift + Page Down:向下滚动终端显示的内容,相当于向下翻页查看更早的输出内容。

Linux输出错误信息查看

如果你输入错误的命令,bash就会告诉你输入了错误信息

通常出现【command not found】可能原因:

  • 命令未安装
  • 命令所在路径不在环境变量PATH中
  • 命令拼写错误

Linux系统在线帮助

在Linux命令行模式下,你可以输入比如c然后按两下[TAB]按键,可以看到有那些以c开头的命令给你用。

[root@chenshiren ~]# c[TAB][TAB] # 输入c后按两下tab
Display all 136 possibilities? (y or n) # 显示有136条命令,按y查看,按n离开

可以看到在这个系统中,少说有136条命令,记得话很难记下来

在Linux系统中,几乎所有命令和配置文件都有相应的在线帮助文档可供查询

–help选项

通过在命令后加上--help可以查看该命令的简要帮助信息

例如,要查看bc命令的帮助,可以使用bc --help命令

[root@chenshiren ~]# bc --help
usage: bc [options] [file ...]-h  --help         print this usage and exit-i  --interactive  force interactive mode-l  --mathlib      use the predefined math routines-q  --quiet        don't print initial banner-s  --standard     non-standard bc constructs are errors-w  --warn         warn about non-standard bc constructs-v  --version      print version information and exit
# 可以看到可以看到bc 选项有哪些,但是没有看到scale用法说明,也没有+-*/ 那些

man命令

man命令是Linux系统中的一个手册阅读器,可以在终端查看大部分命令的手册页,可以用来查看从来没有使用过的命令。

例如,要查看bc命令的手册,可以使用man bc命令。

[root@chenshiren ~]# man bc
# 使用箭头键上下滚动浏览帮助文档,按q退出

可以通过/scale 来查找关键字

这里他讲了有四个特殊变量,分别是scale、ibase、obase和last。

scale定义了某些操作如何使用小数点后的数字,scale的默认值为0

image-20240223233340776

可以看到输入【man bc】首先映入眼帘的就是 bc(1)代表的是一般用户可使用命令

image-20240223230049300

代号代表的是什么内容
1用户在shell环境中可以操作的命令或可执行文件
2系统内核可调用的函数和工具
3库函数和函数调用
4设备文件,通常在/dev下的文件
5文件格式和规范,如 /etc/passwd
6游戏
7杂项(惯例、协议、格式、环境变量等的文档)
8系统管理员命令的文档
9跟内核相关的文件

上表内容可以通过使用【man man】来更详细的说明。如果你执行了man null 第一行就是NULL(4)

man命令输出大致分为以下几个部分:

代号内容说明
NAME显示了命令的名称
SYNOPSIS列出了命令的语法和选项的简要摘要
DESCRIPTION提供了有关命令功能和用法的详细描述
OPTIONS列出了命令可用的选项和标志,以及它们的功能描述
COMMANDS当这个程序(软件)在执行的时候,可以在此程序(软件)中执行的命令
FILES列出与命令或程序相关的文件信息
SEE ALSO列出了其他相关命令或文档,供用户进一步查阅
EXAMPLE提供了一些使用示例,帮助用户更好地理解如何使用命令

man命令常用的按键

按键干什么用的
[Page Up]向上翻页
[Page Down]向下翻页
[Home]去到第一页
[End]去到最后一页
/test向【下】查找test这个字符串
?test向【上】查找字符串
n跳转到下一个匹配搜索结果
N跳转到上一个匹配搜索结果
q退出man命令,返回终端提示符

如果你找不到手册信息可以尝试更新手册

mandb命令用于创建或更新man命令的手册页面数据库索引

[root@chenshiren ~]# mandb 

例如:查找bc命令手册概述

[root@chenshiren ~]# man -f bc
bc (1)               - An arbitrary precision calculator language
bc (1p)              - arbitrary-precision arithmetic language

例如:查找bc相关的手册信息

[root@chenshiren ~]# man -k bc
bc (1)               - An arbitrary precision calculator language
bc (1p)              - arbitrary-precision arithmetic language
bcmp (3)             - compare byte sequences
bcopy (3)            - copy byte sequence
cbc_crypt (3)        - fast DES encryption
cd-paranoia (1)      - 9.8 (Paranoia release III via libcdio) - an audio CD reading utility which includes extra data verification f...
cheese (1)           - tool to take pictures and videos from your webcam
cracklib-check (8)   - Check passwords using libcrack2
create-cracklib-dict (8) - Check passwords using libcrack2
DBI::Const::GetInfo::ODBC (3pm) - ODBC Constants for GetInfo
error (3)            - glibc error reporting functions
error_at_line (3)    - glibc error reporting functions
error_message_count (3) - glibc error reporting functions
error_one_per_line (3) - glibc error reporting functions
error_print_progname (3) - glibc error reporting functions
glibc (7)            - overview of standard C libraries on Linux
gnu_get_libc_release (3) - get glibc version and release
gnu_get_libc_version (3) - get glibc version and release
libc (7)             - overview of standard C libraries on Linux
libcbor (1)          - libcbor Documentation
Pod::Simple::Subclassing (3pm) - - write a formatter as a Pod::Simple subclass
utf8 (3pm)           - Perl pragma to enable/disable UTF-8 (or UTF-EBCDIC) in source code
xkbcomp (1)          - compile XKB keyboard description
[root@chenshiren ~]# man -f bc
bc (1)               - An arbitrary precision calculator language
bc (1p)              - arbitrary-precision arithmetic language

info命令

info命令也是软件的帮助文档的工具,它提供了一个交互式的信息浏览界面,以超文本格式显示文档内容,用户可以使用不同的快捷键来导航和查看详细信息。

通常情况下,info格式的帮助文件会被默认放置在/usr/share/info/目录中

查看info的帮助文档

[root@chenshiren ~]# info info
Next: Stand-alone Info,  Up: (dir)     # 文档描述Stand-alone GNU Info
********************
# 入门指南
This documentation describes the stand-alone Info reader which you can
use to read Info documentation.If you are new to the Info reader, then you can get started by typing
'H' for a list of basic key bindings.  You can read through the rest of
this manual by typing <SPC> and <DEL> (or <Space> and <Backspace>) to
move forwards and backwards in it.# 主要章节
* Menu:* Stand-alone Info::            What is Info?
* Invoking Info::               Options you can pass on the command line.
* Cursor Commands::             Commands which move the cursor within a node.
* Scrolling Commands::          Commands for reading the text within a node.
* Node Commands::               Commands for selecting a new node.
* Searching Commands::          Commands for searching an Info file.
* Index Commands::              Commands for looking up in indices.
* Xref Commands::               Commands for selecting cross-references.
* Window Commands::             Commands which manipulate multiple windows.
* Printing Nodes::              How to print out the contents of a node.
* Miscellaneous Commands::      A few commands that defy categorization.
* Variables::                   How to change the default behavior of Info.
* Colors and Styles::           Customize the colors used by Info.
* Custom Key Bindings::         How to define your own key-to-command bindings.
* Index::                       Global index.

info按键说明

按键干什么用
[Page Down]向下翻页
[Page Up]向上翻页
[Tab]在超链接之间移动,有超链接的地方通常会以*和下划线显示
[Enter]进入超链接
h显示帮助列表
n按下n键可以向后导航,跳转到下一个匹配项
p按下p键可以向前导航,跳转到上一个匹配项
s(/)搜索
q退出

其他有用的文件文档

/usr/share/doc/ 目录通常包含安装在系统中的各种软件的文档、说明和示例文件

这些文档文件用于帮助用户更好地了解和使用安装的软件,提供了软件的详细介绍、配置指南、使用说明、示例代码等信息

我们以【/usr/share/doc/bc】 这个软件信息来说明

[root@chenshiren bc]# ls
AUTHORS  Examples  FAQ  NEWS  README
  • README:这份文档通常包含关于软件包的基本信息、安装说明、使用方法、以及其他重要信息

  • Examples:这个目录包含了一些示例文件

  • FAQ:常见问题解答,帮助用户解决在使用软件时可能遇到的问题。

  • AUTHORS:包含了bc软件包的作者信息,列出了贡献者和开发人员的名单

  • NEWS:记录了一些更新信息

百度搜索

如题,你还可以在百度上搜索相关Linux使用文档和教程

推荐:

Linux菜鸟教程

文本编辑器:nano

nano 是一个简单易用的文本编辑器,适合初学者或者对于命令行界面不太熟悉的用户

nano启动!

要启动 Nano 编辑器,只需在终端中输入 nano 命令,后跟要编辑的文件名,如下所示:

[root@chenshiren ~]# nano csq.txt GNU nano 5.6.1                                                    csq.txt                                                            <== 光标位置[ 已读取 1]
^G 帮助         ^O 写入         ^W 搜索         ^K 剪切         ^T 执行命令     ^C 位置         M-U 撤销        M-A 设置标记
^X 离开         ^R 读档         ^\ 替换         ^U 粘贴         ^J 对齐         ^_ 跳行         M-E 重做        M-6 复制
# ^代表【Ctrl】

常用组合键作用

更完整的说明,可以在nano的界面按下【Ctrl+G】或【F1】获取帮助

组合键作用
Ctrl+G获得帮助
Ctrl+X退出编辑器
Ctrl+O保存文件
Ctrl+R读入(导入)其他文件进行编辑
Ctrl+W搜索文本
Ctrl+C显示当前光标位置
Ctrl+_输入行号,快速移动光标

正确关机方法

①首先观察系统的使用状态

看目前有谁在线,执行【who】这个命令

看网络联机状态,执行【netstat -a】这个命令

看后台执行的程序,执行【ps -aux】这个命令

②通知在线用户关机

在关机前,给在线用户一些时间来结束他们的工作,并通知他们系统将会关机

可以使用shutdown命令

  • 可以自由选择关机模式:关机或重启
  • 自定义关机信息:在关机前,可以将自己设置的信息发送给在线用户
  • 可以仅发出警告信息:吓一吓用户,不是真关机

如何使用?可以使用man shutdown了解更详细的操作

以下是shutdown简单语法:

shutdown [选项] [时间] [警告信息]
选项:
-k:不是真的关机,仅仅发出警告信息
-r:重启
-h:立刻关机
-c:取消现在进行的shutdown命令内存
时间:指定系统关机时间

例如:

# 告诉用户10分钟后关机
[root@chenshiren ~]# shutdown -h 10 "Shutdown in 10 minutes" 
# 告诉用户具体时间15:00关机
[root@chenshiren ~]# shutdown -h 15:00 "Shutdown in 15:00"
# 立刻关机
[root@chenshiren ~]# shutdown -h now
# 立刻重启
[root@chenshiren ~]# shutdown -r now
# 恐吓用户10分钟后关机
[root@chenshiren ~]# shutdown -k now "Shutdown in 10 minutes" 

③数据同步关机

sync命令是用于强制将系统中修改过的数据缓存同步到磁盘中的工具,确保文件系统的数据与存储设备保持同步,防止数据丢失或损坏

sync命令通常在关机前执行,以确保所有数据都已经写入磁盘

[root@chenshiren ~]# sync

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2805860.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Three.js加载PLY文件

这是官方的例子 three.js webgl - PLY 我在Vue3中使用&#xff0c;测试了好久始终不显示点云数据。在网上查询后发现ply文件要放置在public目录下才行 <el-row><el-button type"primary" class"el-btn" click"IniThree1">PLY</…

【ArcGIS微课1000例】0104:二位面状数据转三维多面体(建筑物按高度拉伸)

文章目录 一、加载数据二、添加高度字段三、三维拉伸显示四、生成三维体数据五、注意事项一、加载数据 打开ArcScene,加载配套实验数据(0104.rar中的二维建筑物矢量数据,订阅专栏,获取专栏所有文章阅读权限及配套数据),如下图所示: 二、添加高度字段 本实验将二维数据…

system_v

共享内存 创建共享内存 key_t ftok(const char *pathname, int proj_id);使用相同的pathname和proj_id可以得到相同的key_t int shmget(key_t key, size_t size, int shmflg);需要使用ftok获取key_t IPC_CREAT——不存在就创建&#xff0c;存在就获取 IPC_EXCL——一般和…

Android---PhotoViewer实现图片预览

PhotoViewer 图片查看器模仿微信朋友圈查看图片的效果。 在 Android 项目中引用 JitPack 库 AGP 8. 根目录的 settings.gradle dependencyResolutionManagement {...repositories {...maven { url https://jitpack.io }} } AGP 8. 根目录如果是 settings.gradle.kts 文件 d…

vue 中实现音视频播放进度条(满足常见开发需求)

由于开发需要&#xff0c;作者封装了一个音视频播放进度条的插件&#xff0c;支持 vue2 及 vue3 &#xff0c;有需要的朋友可联系作者&#xff0c;下面是对该款插件的介绍。 插件默认样式&#x1f447;&#xff08;插件提供了多个配置选项&#xff0c;可根据自身需求进行个性化…

AI误导游戏——LLM的危险幻觉

在当今科技高速发展的时代&#xff0c;人工智能&#xff08;AI&#xff09;已成为日常生活和工作中不可或缺的一部分。特别是大语言模型&#xff08;LLM&#xff09;如GPT-4等&#xff0c;它们的智能表现令人惊叹&#xff0c;广泛应用于文本生成、语言翻译、情感分析等多个领域…

5分钟JavaScript快速入门

目录 一.JavaScript基础语法 二.JavaScript的引入方式 三.JavaScript中的数组 四.BOM对象集合 五.DOM对象集合 六.事件监听 使用addEventListener()方法添加事件监听器 使用onX属性直接指定事件处理函数 使用removeEventListener()方法移除事件监听器 一.JavaScript基础…

HL祭记汇

一.写在前面 如果说廿四10天集训&#xff0c;对于我&#xff0c;是完成了从入门&#xff08;虽然可能我比别人入门更早&#xff1f;&#xff09;到准OIer的蜕变&#xff0c;那么&#xff0c;HL7天&#xff0c;可以说是真正成为了OIer&#xff0c;虽然是被小学生、初中生&#…

Linux运维-DHCP服务器

DHCP服务器的配置与管理 项目场景 学校各部门共有180台电脑&#xff0c;除了计算机学院的教师会配置电脑的网络连接&#xff0c;其他部门的老师和工作人员均不会&#xff0c;为了提高网络的管理效率&#xff0c;技术人员决定配置一台DHCP服务器&#xff0c;来提供动态的IP地址…

nginx搭建直播rtmp推流,httpflv拉流环境

背景 工作中发现挺多直播CDN在实现httpflv拉流时都没有使用http chunk编码&#xff0c;而是直接使用no-content-length的做法。所以想自己搭建一个直播CDN支持 http chunk编码。 环境搭建 系统环境 Ubuntu 18.04.4 LTS 软件 nginx-1.18.0 nginx扩展模块 nginx-http-flv-mo…

【前端素材】推荐优质后台管理系统Be admin平台模板(附源码)

一、需求分析 后台管理系统&#xff08;或称作管理后台、管理系统、后台管理平台&#xff09;是一种专门用于管理网站、应用程序或系统后台运营的软件系统。它通常由一系列功能模块组成&#xff0c;为管理员提供了管理、监控和控制网站或应用程序的各个方面的工具和界面。以下…

Linux学习方法-框架学习法——Linux驱动架构的演进

配套视频学习链接&#xff1a;https://www.bilibili.com/video/BV1HE411w7by?p4&vd_sourced488bc722b90657aaa06a1e8647eddfc 目录 Linux驱动演进的过程 Linux驱动的原始架构(Linux V2.4) 平台总线架构(platform) Linux设备树 Linux驱动演进的趋势 Linux驱动演进的过程…

这么多向量数据库,它们之间到底有哪些差异?

上篇说到chroma的近邻搜索算法实现得有问题&#xff0c;不如qdrant的。其实向量数据库之间看似都一样&#xff0c;但细细比较还是有很多不同的。 国外有一系列文章已经讲得很详细了&#xff0c;而且也就是半年前写的&#xff0c;还是具有很强的参考价值&#xff0c;文章如下&a…

最佳 PDF 转 Word 转换器软件,可实现无缝转换

如今&#xff0c;PDF文件格式因其高安全性而被计算机用户所熟悉&#xff0c;这使得无法直接编辑内容。因此&#xff0c;每当用户需要复制内容时&#xff0c;都会遇到很多困难。在这里将介绍了一些可以让您将 PDF 转换为 Word 的工具。 借助高效、免费的 PDF 转 Word 转换器软件…

c语言的数据结构:找环状链表入口处

一起<(&#xffe3;︶&#xffe3;)↗[GO!] 1.如何判断一个链表是否有环 思路:设定两个快慢指针fast和slow,fast每次走两个结点,slow每次走一个节点 如果fast指针遇到了Null,那么这个链表没有环,如果fast和slow可以相遇,则代表这个链表有环 代码如下 N:fast先进环,slow后…

【寸铁的刷题笔记】树、dfs、bfs、回溯、递归(二)

【寸铁的刷题笔记】树、dfs、bfs、回溯、递归(二) 大家好 我是寸铁&#x1f44a; 金三银四&#xff0c;树、dfs、bfs、回溯、递归是必考的知识点✨ 快跟着寸铁刷起来&#xff01;面试顺利上岸&#x1f44b; 喜欢的小伙伴可以点点关注 &#x1f49d; 上期回顾 感谢大家的支持&am…

Linux运维-Web服务器的配置与管理(PHP)

Web服务器的配置与管理(PHP) 项目场景 某企业在CentOS上搭建Web服务系统&#xff0c;以PHP作为网页开发环境&#xff0c;以MySQL为后台数据库。 基础知识 PHP PHP原始为Personal Home Page的缩写&#xff0c;已经正式更名为 “PHP: Hypertext Preprocessor”&#xff08;超…

第1讲-introduction

计算机组成与结构简介 计算机的基本组成 计算机的层次结构

Spring Boot 手写starter!!!

原因&#xff1a;为什么要手写starter&#xff1f;&#xff1f;&#xff1f; 原因&#xff1a;简化功能。 实例&#xff1a;以分页为例&#xff1a;写一个starter。 1.首先定义一个PageX注解。 Target({ElementType.METHOD}) Retention(RetentionPolicy.RUNTIME) Documented p…

【计算机毕业设计】541鲜花商城系统

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…