【linux】02 :Linux基础命令

1.掌握linux系统的目录结构

5bf51ac586f84f589e26d98d04a8b8c0.png

        linux只有一个顶级目录,称之为:根目录。

        windows系统有多个顶级目录,即各个盘符。 

2.linux路径的描述方式

999150aee63541739a4a9351c19803b4.png

        /在Linux中的表示:出现在开头表示根目录,出现在后面表示层级关系。 

 3.什么是命令、命令行

        学习LINUX,本质是学习在命令行下熟练使用Linux的各类命令。

        命令行:即linux终端,是一种命令提示符页面。以纯”字符“的形式操作系统,可以使用各种字符化命令行对系统发出操作命令。

        命令:即linux程序。一个命令就是一个linux程序。命令没有图形化的界面,可以在命令行(终端中)提供字符画的反馈。

4.linux命令基础格式

        格式:command [-options]  [paramete]r

        command : 命令本身
        • -options : [ 可选,非必填 ] 命令的一些选项,可以通过选项控制命令的行为细节
        • parameter : [ 可选,非必填 ] 命令的参数,多数用于命令的指向目标等
        语法中的 [] ,表示可选的意思

5.ls命令

        语法细节:ls [-a -l -h] [Linux路径]

        -a.-l,-h是可选的选项,linux路径是此命令可选的参数

        当不使用选项和参数,直接使用ls本体,表示:以平铺形式,列出当前工作目录下的内容。

de3a8abf2b3240b7890fc4440efa0be2.png

        由于linux系统的命令行终端在启动的时候,默认加载当前登入用户的home目录作为当前工作目录,所以ls命令列出的是home目录的内容。

        home目录:每个Linux用户在linux系统的个人账户目录,路径在:/home/用户名。比如我d的home目录就是:/home/cai

         -a 表示all,即列出全部文件(包含隐藏的文件和文件夹)

        可以看出,ls -a比ls列出的内容更多,图中以为.开头的,表示的是Linux的隐藏文件/文件夹(只要以.开头,就能自动隐藏),而只有通过-a才能看见这些隐藏起来的文件夹/文件 。

        -l 表示以列表(竖向排列)的形式展示内容,并展示更多信息。第一个字母是d表示是文件夹,第一个位置是-表示这是一个文件。

        语法中的选项是可以组合使用的,比如学习-a, -l可以组合使用,ls -l -a, ls -la, ls -al,这三者是等价的,表示同时应用-a, -l的功能。

        除了选项本身可以组合后,选项和参数也可以一起使用。

        -h表示以易于阅读的形式,列出文件大小如k,m,g。而且-h选项必须搭配-l一起使用,以更人性化的方式显示文件的大小单位。

        Ls命令指定要查看的文件夹(目录)的内容,如果不给定参数,就查看当前工作目录的内容。

6  cd切换工作目录

        当linux中端打开的时候,会默认以用户的home目录作为当前的工作目录,我们可以通过cd命令,更改当前所在的工作目录。

        语法:cd    [linux路径]

        cd命令无需选项,只有参数,表示要切换到哪个目录下。

        cd命令直接执行,不写参数,表示回到用户的home目录。

7    pwd查看当前工作目录

        通过ls来验证当前的工作目录,其实是不恰当的。我们可以通过pwd命令,来查看当前所在工作目录。

        语法:pwd

        pwd命令无选项无参数,直接输入pwd即可。

8  相对路径和绝对路径

        切换到指定的desktop的两种写法:

        cd   /home/cai/Desktop(绝对路径写法)

        cd Desktop(相对路径写法)

        绝对路径:以根目录为起点,描述路径的一种写法,路径描述以/开头。

        相对路径:以当前目录为起点,描述路径的一种写法,路径无需/开头。

        如果/home/cai/Desktop想要回退到上一级/home/cai,可以直接cd 即可回到home目录,也可以通过特殊路径符

        特殊路径符:

. 表示当前目录,比如cd ./Desktop表示切换到当前目录下的Desktop目录内。

..表示上一级目录,比如cd ..即可切换到上一目录,cd  ../..切换到上二级的目录

~表示home目录,比如cd ~即可切换到home目录;cd ~/Desktop,表示切换到home内的Desktop目录

9.通过 mkdir命令创建目录(文件夹)

        语法:mkdir [-p] linux路径

        参数必填,表示linux路径,即要创建文件夹的路径,相对路径或绝对路径即可。

        -p选项选填,表示自动创建不存在的父目录,适用于创建连续多层级的目录。

        如果想要一次性创建多个层级的目录,会报“没有那个文件或目录”的错,此时可以添加上-p,将一整个链条都创建完成。

        注意:创建文件夹需要修改权限,请确保操作均在home目录内,不要在home外操作,涉及到权限问题,home外无法成功,会提示“权限不够”。

练习:创建it/linux/nice(需使用~)

mkdir -p ~/it/linux/nice

10   touch 命令创建文件

        语法:touch linux路径

        touch命令无选项,参数必填,表示要创建的文件路径,相对、绝对、特殊路径均可使用。

11  cat查看文件内容

        语法:cat linux路径

        cat的参数表示被查看的文件路径,相对、绝对、特殊路径均可使用。

        打开CentOS并登入,双击打开home目录下刚刚创建的test.txt文件,接着简单的写上一句话“it is easy”,然后点击save按钮保存文件。回到命令行使用cat命令查看文件内容。

12 more查看文件内容

        语法:more linux路径

        more的参数表示被查看的文件路径,相对、绝对、特殊路径均可使用。

        与cat不同的是,cat是直接将内容全部显示出来,more接受翻页,如果文件内容过多,可以一页页的展示。

        linux系统内置有一个文件,路径为:/etc/services,可以使用More命令查看。more/etc/services:在查看过程中,通过空格翻页,通过q退出查看。

        使用cat,一股脑就全显示出来了。清屏操作可以是ctrl+l或者右击清除缓存。

        使用more,会发现左下有个0%,这表示当前查看文件内容为0%,我们可以通过使用空格键翻页,通过q退出

13 cp复制文件或者文件夹        

        语法:cp [-r] 参数1 参数2

        -r选项,可选,用于复制文件夹使用,表示递归。

        参数1,linux路径,表示被复制的文件或文件夹。

        参数2,linux路径,表示要复制去的地方。

              

14 mv移动文件或者文件夹

        语法:mv 参数1 参数2

        参数1,linux路径,表示被复制的文件或文件夹。

        参数2,linux路径,表示要移动去的地方,如果目标不存在,则起到改名的效果。

        移动文件夹

15 rm删除文件或者文件夹

        语法 :rm [-r -f] 参数1 参数2 .....参数n

        同cp命令一样,-r选项用于删除文件夹

        -f表示force强制删除(不会弹出提示确认信息)。普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示,所以一般普通用户用不到-f选项。

        参数1、参数2.......参数n表示要删除的文件或文件夹路径,按照空格隔开。如果其中一个参数不存在,即使提示了['没有那么文件或目录'],其他存在的参数也会被正常删除。

        rm命令支持通配符*,用来做模糊匹配。

        符号*表示通配符,即用来匹配任意内容(包含空)。例如test*表示匹配任何以test开头的内容,*test表示匹配任何以test结尾的内容,*test*表示匹配任何包含test的内容。

        为了使用-f,现在我们暂时切换到root用户体验。可以通过su - root,并输入密码123456(和普通用户默认一样,注意输入的时候不显示输入的内容,照常输入完回车就可以)临时切换到root用户进行体验,通过输入exit命令,退回普通用户(临时用root,用完记得退,不要一直用)

        在提示句[rm:remove regular empty file 'test.txt']后输入y表示确定删除,输入n表示取消。

        rm是一个危险的命令,特别是root(超级管理员)的时候,需要谨慎使用,如下命令请不要在root管理员下执行rm -rf/或者 rm -rf/*,效果等同与在windows上执行c盘格式化。 

16 which查找命令的程序文件

        我们在前面学习的linux命令,其实他们的本体就是一个个的二进制可执行程序,和windows系统中的.exe文件,是一个意思。我们可以通过which命令查看所使用的一系列命令的程序文件存放在哪里。

        语法:which 要查找的命令。

        

17 find查找指定文件(文件名、文件大小)

        语法:find 起始路径 -name “被查找文件名”

        为了拥有最大的权限,可以在整个系统完成搜索,我们可以切换到root用户以获得管理员权限。

        find命令也可以使用通配符。

  

        find也可以按文件大小查找文件

        语法:find 其实路径 -size +|-n[KMG]

        +、-表示大于和小于

        n表示大小数字

        KMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB

查找小于10KB的文件:find / -size -10k

查找大于100MB的文件:find / -size +100M

查找大于1GB的文件:find / -size +1G

        (ls可以查看指定文件的大小:ls -lh 文件路径)

使用find命令查找处名称带有centos的文件:find / -name "*centos*"

使用find命令查找出:/user 目录大于100M的文件:find /user -size +100M

18    grep过滤文件内容 

        grep可以通过关键字过滤文件

        语法:grep [-n]  关键字 文件路径

        选项-n,可选,表示在结果中显示普配的行的行号

        参数,关键字,必填,表示过滤的关键字,带有空格或者其他特殊符号,建议使用“ ”将关键字包围起来

        参数,文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口

        现在通过touch命令在home目录下创建cai.txt,并通过图形化界面编辑并保存以下内容:

now ,think a example to test "grep",

the part is created for "grep" 

19  wc统计内容数量

        可以通过wc命令统计文件的行数,单词数量等。

        语法:wc [-c  -m  -l  -w]  文件路径

        选项,-c,统计bytes数量

        选项,-m统计字符数量

        选项,-l统计行数

        选项,-w统计单词数量

        参数,文件路径,被统计的文件,可作为内容输入端口。

        3表示行数,13表示单词数量,71表示当前文件的字节数,cai.txt就是文件名。

        

20  管道符的概念和应用

        管道符|表示将管道符左边命令的结果作为右边命令的输入。适用于输入内容过多的情况。

        cat cai.txt的输出结果(文件内容) 作为 右边grep命令的输入(被过滤文件)

请使用cai.txt进行统计,请使用cat ,grep ,管道符 ,wc命令组合 ,进行统计

统计文件中带有think关键字的有几行:

cat cai.txt | grep think | wc -l

统计文件中带有think关键字的结果中有多少个单词:

cat cai.txt | grep think | wc -w

21  echo输出指定内容

        语法:echo 输出的内容

        无需选项,只有一个参数,表示要输出的内容,复杂内容可以用”  “包围

        在终端:hello linux

        带有空格或\ 等特殊符号,建议使用双引号包围,因为不包围的话,空格后很容易被识别为参数2,尽管echo不受影响,但是要养成好习惯。

22  反引号

        如果输入echo pwd,本意是想输出当前的工作路径,但是pwd被作为普通字符输出了,我们可以通过反引号(通常也称之为飘号) 将其包围,被包围的内容会作为命令执行,而非普通字符。

23  重定向的使用

        重定向符:>和>>

        >是将左侧命令的结果,覆盖写入到符号右侧指定文件中

        >>是将左侧命令发结果,追加写入到符号右侧指定的文件中

24 tail跟踪文件更改

        使用tail命令,可以查看文件尾部内容,跟踪文件的最新更改

        语法:tail [-f  -num]  linux路径

        参数,Linux路径,表示被跟踪的文件路径

        选项,-f,表示持续跟踪,ctrl+c可以退出持续跟踪模式

        选项,-num,表示查看尾部多少行,不填默认10行。

        

请使用echo并配合反引号,输出内容:我当前的工作目录是:’具体的工作目录路径‘,并结合重定向符,将输出结果覆写入work.txt文件

echo "我当前工作的目录是:’pwd' ">work.txt

请使用echo输出任意内容并追加到work.txt文件中,通过tail命令持续跟踪文件内容更改

echo "内容” >> work.txt

tail -f work.txt

25 使用vi/vim编辑器完成文件编辑工作

        vi/vim是Linux中最经典的文本编译器

        用图形化界面中的文本编辑器,vi是命令行下对文本文件进行编辑的绝佳选择

        vim是vi的加强版本,兼容vi所有指令,不仅能编辑文本,而且还具有shell程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性。        

        如需通过vi/vim编辑器编辑文件,可以通过【vi 文件路径 】或者 【vim 文件路径】,如果文件路径表示的文件不存在,那么此命令会用于编辑新文件,如果此文件路劲表示的文件存在,那么此命令会用于编辑已有文件。

        步骤:使用vim hello.txt编辑一个新文件,执行后进入的是命令模式,在命令模式内,按键盘i进入输入模式,在输入模式输入 a and b,输入完成后 ,按esc退出命令模式,在命令模式内,按键盘:,会进入底线命令模式,在底线命令模式输入:eq,表示保存文件并退出vim编辑器,然后输入cat hello.txt查看内容。      

        命令模式快捷键:


上一篇:

【linux】01 :虚拟机,Linux系统,远程连接Linux系统-CSDN博客

下一篇:

【linux】03 :用户和权限-CSDN博客

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

项目管理工具及模板(甘特图、OKR周报、任务管理、头脑风暴等)

项目管理常用模板大全: 1. 项目组OKR周报 2. 项目组传统周报工作法 3. 项目甘特图 4. 团队名单 5. 招聘跟进表 6. 出勤统计 7. 年度工作日历 8. 项目工作年计划 9. 版本排期 10. 项目组任务管理 11. 项目规划模板 12. 产品分析报告 13. 头脑风暴 信息化项目建设全套…

vuetify3+vite,打包后mdi图标无法正常显示,及打包后首页白屏

1、图标无法正常显示 【因为我的vite.config.ts配置中使用了vite-plugin-css-injected-by-js这个插件】 为了优化我的项目,我使用了很多插件,vite-plugin-css-injected-by-js就是其中一个,项目本地运行是正常的,但是当我使用unia…

【梳理】k8s使用Operator搭建Flink集群(高可用可选)

文章目录 1. 架构图2. helm 安装operator3. 集群知识k8s上的两种模式:Native和Standalone两种CR 4. 运行集群实例Demo1:Application 集群Demo2:Session集群优劣 5. 高可用部署问题1:High availability should be enabled when sta…

【LeetCode】升级打怪之路 Day 18:二叉树题型 —— 树的深度、高度、路经

今日题目: 104. 二叉树的最大深度111. 二叉树的最小深度110. 平衡二叉树257. 二叉树的所有路径112. 路径总和 目录 Problem 1:树的深度LC 104. 二叉树的最大深度 【easy】LC 111. 二叉树的最小深度 【易错】 Problem 2:树的高度LC 110. 平衡二…

【阿里云系列】-如何实现两个VPC网络资源互通

背景 由于实际项目预算有限,两套环境虽然分别属于不同的专有网络即不同的VPC,但是希望借助一台运维机器实现对两个环境的监控和日常的运维操作 网络架构 如下是需要实现的外网架构图,其中希望实现UAT环境的一台windows的堡垒机可以访问生产…

如何考上东南大学计算机学院?

东南大学招生学院是计算机科学与工程学院、苏州联合研究生院,复试公平,不歧视双非考生,985院校中性价比较高,但近年热度在逐年上涨,需要警惕。 建议报考计算机科学与工程学院081200计算机科学与技术专业目标分数为380…

HarmonyOS开发:NEXT版本开发新体验

前言 年前,公司团队接洽了鸿蒙方团队,确认了生态合作,于是开通了白名单权限,授权了新的IDE和相关文档的使用和查看,历经一月有余,谈谈NEXT版本有哪些开发上的区别。 本文会从以下几个方面阐述:…

Unity2021.3.35f1配置安卓APK发布环境

1.在Unity3d中点击菜单【Edit】【Preferences】,在External Tools中可以看到Android平台需要配置JDK、SDK、NDK、Gradle。对应的版本需要在官方文档中查看 JDK:指Java开发环境 SDK:指安卓开发包,包括Build Tools、Commond-line T…

day1-C++

1>提示并输入一个字符串&#xff0c;统计该字符中大写、小写字母个数、数字个数、空格个数以及其他字符个数要求使用C风格字符串完成。 代码&#xff1a; #include <iostream> #include <string.h> using namespace std;int main() {string str ;int low 0, …

react 综合题

一、组件基础 1. React 事件机制 javascript 复制代码<div onClick{this.handleClick.bind(this)}>点我</div> React并不是将click事件绑定到了div的真实DOM上&#xff0c;而是在document处监听了所有的事件&#xff0c;当事件发生并且冒泡到document处的时候&a…

【数据结构】特殊的线性表——栈

&#x1f9e7;&#x1f9e7;&#x1f9e7;&#x1f9e7;&#x1f9e7;个人主页&#x1f388;&#x1f388;&#x1f388;&#x1f388;&#x1f388; &#x1f9e7;&#x1f9e7;&#x1f9e7;&#x1f9e7;&#x1f9e7;数据结构专栏&#x1f388;&#x1f388;&#x1f388;&…

WPF —— 数据绑定(初级)

数据绑定&#xff1a;把数据以一个变量的方式绑定到一个标签上,以后可以通过对变量修改&#xff0c;达到修改属性的目的 之前修改某一个label标题&#xff0c;之前写法this.l1.content"李四" 数据绑定写法&#xff1a;label content {Bind path title} …

Redis中AOF数据持久化

AOF介绍 AOF&#xff08;Append Only File&#xff09;持久化&#xff1a;以独立日志的方式存储了 Redis 服务器的顺序指令序列&#xff0c;并只记录对内存进行修改的指令。 当Redis服务发生雪崩等故障时&#xff0c;可以重启服务并重新执行AOF文件中的指令达到恢复数据的目的…

Oracle之ADG与DG的区别?

在上云后的Oracle数据灾备场景中&#xff0c;我们经常听到DBA迁移工程师讲到“在这个项目中用ADG进行数据实时备份&#xff0c;ADG比DG更好&#xff01;”。究竟ADG作Oracle数据灾备的优势在什么地方&#xff1f; 一、ADG主要解决了DG时代读写不能并行的问题 DG时代的数据同步…

计算机设计大赛 深度学习花卉识别 - python 机器视觉 opencv

文章目录 0 前言1 项目背景2 花卉识别的基本原理3 算法实现3.1 预处理3.2 特征提取和选择3.3 分类器设计和决策3.4 卷积神经网络基本原理 4 算法实现4.1 花卉图像数据4.2 模块组成 5 项目执行结果6 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &a…

es配置elk实现增量同步以及全量同步

需要配置这个文件 input {stdin {}jdbc {# mysql 数据库链接,center为数据库名,jdbc版本比较大的要加上&#xff1f;后面那串字符jdbc_connection_string > "jdbc:mysql://192.168.161.131:3307/mz-master"# 用户名和密码jdbc_user > "root"jdbc_pas…

bug--xxoobject has no attribute xxx

Python 创建类的实例后却不能调用写的方法&#xff0c;检查了半天原来是缩进的问题&#xff0c;def函数不应该和class并列 只能说这个英文空格太小了&#xff0c;看不出来。。。。

RVGS-06-1-1PN-A2电磁引导式溢流阀

RVGS-03-2-2PN-D2、RVGS-04-3-1PN-D2、RVGS-06-2-3P-A2、RVGS-03-1-2P-D2、RVGS-10-3-1P-A2、RVGS-06-1-1PN-A2、RVGS-03-1-2PN-D2、RVGS-06-2-3P-D2油田YUTIEN电磁引导式溢流阀和电磁换向阀的组合&#xff0c;配套的面阀为DSW-02-2B3B或者DSW-02-2B2。由于电磁阀直接安装在溢流…

Python笔记:使用Python脚本实现SSH登录

调试IDE&#xff1a;PyCharm Python库&#xff1a;Paramiko 首先安装Paramiko包到PyCharm&#xff0c;具体步骤为&#xff1a;在打开的PyCharm工具中&#xff0c;选择顶部菜单栏中“File”下的“Settings”&#xff0c;在设置对话框中&#xff0c;选择“Project”下的“Proje…

头脑风暴法是什么?10个值得推荐的头脑风暴模板!

身处职场的你&#xff0c;想必对头脑风暴这个术语并不陌生&#xff0c;它可能是某个同事或者领导的口头禅&#xff0c;每当遇到需要给出方案的场景&#xff0c;头脑风暴或者“脑暴”就会从他们嘴里脱口而出&#xff0c;但你真的了解&#xff0c;头脑风暴是什么意思吗&#xff1…