常见的Linux基本指令

目录

什么是Linux?

Xshell如何远程控制云服务器

Xshell远程连接云服务器

Linux基本指令 

用户管理指令

pwd指令

touch指令

mkdir指令

ls指令

cd指令

rm指令

 man命令

cp指令

mv指令

cat指令

head指令

​编辑 tail指令

​编辑echo指令

find命令

grep指令


本期开始,我们将进行Linux操作系统的学习。

什么是Linux?

Linux可能很多小伙伴都听说过,Linux是什么呢?

Linux是一种自由和开放源代码的类UNIX操作系统,该操作系统的内核由林纳斯托瓦兹在1991年首次发 布,之后,在加上用户空间的应用程序之后,就成了linux操作系统,严格来讲,Linux只是操作系统 内核本身,但通常采用“Linux内核”来表达该意思。而Linux则常用来指基于Linux内核的完整操作系统, 它包括GUI组件和许多其他实用工具。总的来说,Linux就是一个开源的很nb的操作系统。

Xshell如何远程控制云服务器

在讲述基本指令之前,我们得自己先在相关网站购买云服务器,购买了云服务器(腾讯云,阿里云,华为云都可以,根据自身情况选择)之后,这个服务器是存放在商家那边的,我们要使用必须使用一款名叫Xshell的软件,使我们可以在自己的电脑上远程控制这些我们购买的云服务器。

Xshell远程连接云服务器

step1:购买云服务器之后,以华为云为例,点击控制台,可以看到实例

step2:点击实例,第一次进入,建议重置密码,并且记住这个公网ip,这使我们在Xshell上要输入的主机ip 

 step3:安装好Xshell之后,运行Xshell,点击左上角添加按钮,就可以配置云服务器了

 step4:点击文件夹,可以看到我们之前创建的会话,点击连接,即可连接远程服务器。

step5:点击连接,之后会让输入用户名,这里只要是第一次登录,用户名都是root,即系统的最高权限拥有者,点击确定之后,会让输入密码,密码就是刚刚我们重置后的密码。如果忘了没关系,继续返回step2重置密码即可。

step6:点击确定,登录成功即可看到下列界面,此时我们就已经远程连接上了云服务器,我们就可以利用Xshell,通过基本指令来远程操控我们的云服务器进行相关的操作了。

         

Linux基本指令 

用户管理指令

 如果我们以root的身份进入了服务器之后,因为一个服务器可以供多个成员使用,如果我们还想添加其他成员怎样添加呢?添加之后,用户又怎样删除呢?

//添加用户
# ​​​​​​​​​​adduser yjd 
//添加用户密码
# passwd  yjd
//删除用户
# userdel -r yjd

注意:在我们添加用户密码时,我们是看不见密码的,正常输入就行。在Xshell中复制时ctrl+ins按钮,粘贴是shift+insert按钮。

pwd指令

pwd:展示当前目录。

touch指令

touch:创建文件指令,只能创建普通文件,不能创建目录(文件夹)。

              更新文件的最新创建时间。

mkdir指令

mkdir:用于创建目录。

mkdir -p:创建多级目录。 

ls指令

文件=内容+属性。没有内容的文件的大小也不一定为0,因为还要考虑文件的属性信息,属性信息也是占内存的。

ls:对于目录:展示当前目录下的所有子目录的名称属性和所有文件的名称属性。

       对于文件:展示文件的名称属性和其它信息。

ls -l:以列表的形式展示当前目录下的子目录和所有文件的所有属性。注意与ls的区别,ls只展示文件名属性。 

ls  -a:-a表示显示当前目录下的隐藏文件,Linux下,以.开头的文件我们称之为隐藏文件。

ls -a -l:表示显示当前目录下的隐藏文件,并以列表的形式展示当前目录下的所有文件的更多属性。

ls -a -l 目录名:展示当前目录里的内容及其相关属性。

ls -a -l -d 目录名:展示当前目录的相关属性。

ll:ll等价于ls -l,相当于ls -l的别名。

cd指令

绝对路径 :从根目录开始的路径,这个路径具有唯一性,一定可以找到相关目录和文件。

相对路径:从当前目录开始进行索引的路径。

找到一个相同的文件,只能有一个绝对路径,但是可以有多个相对路径。相对路径不能唯一的标识一个文件。

cd:切换目录。

cd后可以跟相对路径/绝对路径。

.表示当前目录。

..表示上级目录。

 

cd -:记录最近从哪里来的目录。进行当前目录与上次目录的切换。

cd ~:查看当前用户的工作目录。

对于root用户而言:工作目录一定为/root

对与普通用户而言:工作目录一定为/home/xxx

rm指令

rm:删除普通文件。

rm -r:删除当前目录及递归删除当前目录下的所有文件。

rm -f:强制删除。 

rm -rf:强制递归删除目录及其下所有文件。

注意:rm -rf这个指令一定要谨慎使用,如果不小心递归删除了根目录,操作系统就会崩溃。

man命令

在C和C++中我们有专门的MSDN手册要,用于查看先关的函数和语法如何进行使用,在Linux中我们也有相关的手册,如果我们想看一个指令的用法是怎样的就要用到man指令。

man手册总共有8章:

1. 是普通的命令

2. 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文 件)

3.是库函数,如printf,fread

4.是特殊文件,也就是/dev下的各种设备文件

5.是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义

6.是给游戏留的,由各个游戏自己定义

7.是附件还有一些变量,比如向environ这种全局变量在这里就有说明

8.是系统管理用的命令,这些命令只能由root使用,如ifconfig

man :因为man手册共有8章,我们默认是在第一章进行查找。

man num:在num章进行查找。

不同的指令在不同的章节下进行查找,查找出来的结果是不同的。

cp指令

cp指令用于文件的复制。

cp  src  dest:把源文件拷贝到目标文件。如果目标文件没有,则会生成直接生成目标文件。

cp -rf:可以进行目录间的复制。 

注意:目录的复制和文件的复制,可以发生在同一个目录下,也可以发生在不同的目录下,只要带上相对路径或者绝对路径即可。 

mv指令

mv:剪切的功能,可以剪切复制普通文件,也可以剪切复制目录。 

 mv:也可以用于文件或者目录的重命名。

cat指令

cat:查看文件内容。

tac:倒序查看文件内容。

head指令

head:如果没有给定行数,默认查看文件的前10行内容。

head -num:查看文件的前num行内容。

 tail指令

tail:如果没有给定函数,默认查看文件的后10行内容。

tail -num:查看文件的后num行内容。

echo指令

echo:将字符串打印在标准输出上。 

echo  字符串  >  文件名称:将本应该在标准输出上输出的内容,写入到了一个文件里,如果这个文件不存在,就会自动创建文件。

我们把本应该在标准输出上输出的内容写入到文件中的这种操作,称作输出重定向

 输出冲定性会清空原始内容,然后重新写入。

如果我们不想清空原始内容,想在之前的内容后面继续增加内容,此时我们就应该使用追加重定向。也属于输出重定向。只需要将之前输出重定向的>改成>>即可。

cat指令在读取文件内容时,如果没有指定文件,会从键盘读取内容,然后显示在标准输出上。

cat <:从文件中读取内容,并打印在标准输出(标准输出可以理解为电脑屏幕)上,我们称作输入重定向。    

​​​​​​​ 

  我们知道cat可以查看文件的全部内容,如果我们现在要求不查看文件的全部内筒,也不查看文件的前num行和后num行内容,我们此时该怎么做呢?

大家可以先思考这样一个场景,有20个数,我们要拿到第6个到第10个数之间的所有数,我们应该怎样去拿呢?一种方法就是依次数下去,然后拿到这5个数,另一种方法就是我们先拿到前10个数,然后再去拿到这10个数的后5个数,这样也就会拿到这5个数。在实际操作中,我们一般使用第二种方法,因为当数据很多时,第一种方法的效率太低。

如果在文件test1.c中我们要拿到第6行到第10行的数据,代码如下:

注意:这其中我们用到了管道的技术,单个 |  我们可以称作管道,我们可以将前10行的数据先输出到管道,然后再将管道里的后5行的数据输出,此时我们就拿到了第6到第10行的所有内容。其实我们在使用管道技术的同时,也用到了隐式的输出重定向。因为前十行的数据没有在标准输出输出,而是将它输出到了管道类,跟之前输出到文件里类似。

find命令

find:按名称查找文件。

grep指令

grep :可以将指定的字符或者字符串,在相关文件中找到并打印出来。

grep -v:将不包含指定的字符或者字符串在文件中找到并打印出来。 

 grep -i:不区分大小写将指定的字符或者字符串找到并打印出来打印出来。

以上便是我们在Linux常用到的一些指令。

本期内容到此结束^_^

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

记一次挖矿病毒的溯源

ps&#xff1a;因为项目保密的原因部分的截图是自己在本地的环境复现。 1. 起因 客户打电话过来说&#xff0c;公司web服务异常卡顿。起初以为是web服务缓存过多导致&#xff0c;重启几次无果后觉得可能是受到了攻击。起初以为是ddos攻击&#xff0c;然后去查看web服务器管理…

Python调用API的实用技巧

导语&#xff1a;在当今的软件开发世界中&#xff0c;API&#xff08;应用程序接口&#xff09;已成为数据传输和功能调用的重要桥梁。Python作为一种功能强大的编程语言&#xff0c;提供了多种调用API的方法。本文将分享一些实用的Python调用API技巧&#xff0c;帮助你更好地利…

GoLang EASY 游戏框架 之 应用项目+教程 02

1 Program Examples Overview 用easy 实现的 服务端 和客户端样例。 simple 项目构建了比较完备的目录结构&#xff0c;可以作为空项目拿到项目中直接应用。 传送门&#xff1a;https://github.com/slclub/easy 位置&#xff1a; examples/simple examples/simple_cl…

【坑备注】自定义@Repeatable注解

在字段上定义可重复使用的注解&#xff1a; Target(value {ElementType.FIELD}) Retention(value RetentionPolicy.RUNTIME) Repeatable(value Indexes.class) public interface TableIndex {IndexTypeEnum type();String name();int order(); } 这里指定了Repeatable注解…

最大子数组和java实现【动态规划基础练习】

12.15 最大子数组和 给你一个整数数组 nums &#xff0c;请你找出一个具有最大和的连续子数组&#xff08;子数组最少包含一个元素&#xff09;&#xff0c;返回其最大和。 子数组 是数组中的一个连续部分。 示例 1&#xff1a; 输入&#xff1a;nums [-2,1,-3,4,-1,2,1,-5,4]…

深入了解空号检测API:提升通信效率的关键

引言 随着通信技术的不断发展&#xff0c;人们对于通信效率的要求也越来越高。在通信过程中&#xff0c;空号检测是一个非常重要的环节&#xff0c;它可以帮助我们避免无效的通信&#xff0c;提高通信效率。而空号检测API则是实现空号检测功能的重要工具。 空号检测API 空号…

git的分支的使用,创建分支,合并分支,删除分支,合并冲突,分支管理策略,bug分支,强制删除分支

GIT | 分支 文章目录 GIT | 分支创建分支合并分支删除分支合并冲突分支管理策略bug分支强制删除分支 创建分支 查看当前本地仓库中有哪些分支 git branchHEAD所指向的分支就是当前正在工作的分支 cat .git/HEAD创建一个分支 git branch dev创建好了&#xff0c;但是目前还是…

MapReduce模拟统计每日车流量-解决方案

MapReduce模拟统计每日车流量-解决方案 1.Map阶段&#xff1a;将原始数据分割成若干个小块&#xff0c;每个小块由一个Map任务处理。Map任务将小块中的每个数据项映射成为一个键值对&#xff0c;其中键为时间戳&#xff0c;值为车流量。2.Shuffle阶段&#xff1a;将Map任务输出…

数字人克隆系统源码无限克隆数字人!

随着人工智能技术的不断发展&#xff0c;数字人的应用越来越广泛。数字人可以用于虚拟演员、虚拟客服、虚拟主持人等领域&#xff0c;为企业和个人带来更多的商业价值和娱乐体验。然而&#xff0c;数字人的制作过程需要大量的人力和时间&#xff0c;成本较高&#xff0c;限制了…

记一次clickhouse启动报错

clickhouse一次排错 clickhouse启动报错 报错&#xff1a; Application: Code: 210. DB::Exception: Listen [::]:8123 failed: Poco::Exception. Code: 1000, e.code() 0, DNS error: EAI: Address family for hostname not supported (version 23.3.1.2823 (official bui…

QT6.3下载及安装步骤详解

QT 6.3 是 QT 的最新版本&#xff0c;它带来了许多新的功能和改进。下面介绍 QT 6.3 的下载和安装步骤。 1. 下载 QT 6.3 首先&#xff0c;需要从 QT 官方网站下载 QT 6.3 的安装包。打开浏览器&#xff0c;进入 QT 官方网站&#xff08;https://www.qt.io/&#xff09;&am…

23年Q2.Q3书单更新

0x00 如题 记录Q2.Q3阅读过的有价值的文章。 0x01 文章 Nginx正向代理配置-嗨客网 OU/Group/Group Policy组织单元、组和组策略_回关看不曾走远的技术博客_51CTO博客 https://www.cnblogs.com/-qing-/p/14979735.html ----域渗透-LDAP中域内组、OU笔记 Linux chmod 命令…

破局:国内市场确实存在“消费升级”和“消费降级”,3.0全新新零售商业模式

国内市场确实存在“消费升级”和“消费降级”两个趋势&#xff0c;这是由于不同消费者群体的需求和购买力存在差异。消费升级主要发生在高端市场&#xff0c;消费者愿意为高品质、高价值、高价格的商品和服务付出更多。而消费降级则主要发生在中低端市场&#xff0c;消费者更加…

vue2项目vue-qrcode-reader 扫一扫二维码插件

vue2项目 vue-qrcode-reader 扫一扫二维码插件 问题所在解决办法成功展示 问题所在 今天在引导师弟做扫二维码功能&#xff0c;发现通过npm install --save vue-qrcode-reade安装死活就是报错TypeError: Object...) is not a function 解决办法 百度了很多大牛的博客&#…

serializable和parcelable的区别(GPT回答)

在 Android 中&#xff0c;Parcelable 和 Serializable 是两种用于实现对象序列化和反序列化的接口&#xff0c;但它们有一些重要的区别&#xff1a; 性能&#xff1a; Parcelable 比 Serializable 更高效。Parcelable 的设计目标是为了在 Android 中传递对象数据&#xff0c;尤…

Leetcode—2415.反转二叉树的奇数层【中等】

2023每日刷题&#xff08;六十&#xff09; Leetcode—2415.反转二叉树的奇数层 BFS的C实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(n…

【docker 】Dockerfile指令学习

学习文档地址 上篇文章&#xff1a;【docker 】基于Dockerfile创建镜像 Dockerfile指令文档地址 .dockerignore 文件 Dockerfile指令 常见的指令 Dockerfile 指令说明FROM指定基础镜像&#xff0c;用于后续的指令构建。MAINTAINER指定Dockerfile的作者/维护者。&#xff…

RK3568平台(网络篇) 有线网络基本概念及测试手法

一.什么是交换机&#xff1f; 交换机是一种用于电(光)信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路。最常见的交换机是以太网交换机。交换机工作于OSI参考模型的第二层&#xff0c;即数据链路层。交换机拥有一条高带宽的背部总线和内部交换…

c++原子变量

原子变量 概述 ​ C11提供了一个原子类型std::atomic<T>&#xff0c;通过这个原子类型管理的内部变量就可以称之为原子变量&#xff0c;我们可以给原子类型指定bool、char、int、long、指针等类型作为模板参数&#xff08;不支持浮点类型和复合类型&#xff09;。 ​ …

51单片机应用从零开始(十一)·数组函数、指针函数

51单片机应用从零开始&#xff08;九&#xff09;数组-CSDN博客 51单片机应用从零开始&#xff08;十&#xff09;指针-CSDN博客 目录 1. 用数组作函数参数控制流水花样 2. 用指针作函数参数控制 P0 口 8 位 LED 流水点亮 1. 用数组作函数参数控制流水花样 要在51单片机中…