Linux的基础指令

目录

1、ls指令

.和..意义

2、pwd指令

3、cd指令

①cd ~

②cd -

关于cd ..的用法 

绝对路径和相对路径

4、touch指令

5、mkdir指令

tree指令

6、rmdir指令

7、rm指令

 *

 8、man指令

9、cp指令

nano:

10、mv指令

11、cat指令

12、more指令

 13、less指令

14、echo指令

输出重定向>与追加重定向 >>

>输出重定向的使用

>>追加重定向的使用

输入重定向<

15、head指令

16、tail指令

17、管道| 

一、使用head和tail以及输出重定向的方法:

 二、管道的方法

18、时间相关的指令date

19、Cal指令 

20、find指令

 which指令

 21、alias指令

22、grep指令

 xargs指令

23、zip/unzip指令

24、tar指令

25、bc指令

26、uname –r指令

​编辑

27、history指令

热键


 

1、ls指令

语法:ls [选项] [目录或文件]

选项也可以结合起来用,中间加空格即可,例如:

注意:可以 ls -a -l;也可以直接 ls -al

功能:显示当前路径下的文件名

常用选项:

①-l

功能:列出文件的详细信息

②-a

功能:列出目录下的所有文件,包括以 . 开头的隐含文件

Linux下是有隐藏文件的,隐藏文件/目录(文件夹)的方式就是让文件名以 . 开头

.和..意义

 其中.表示当前路径,可以限定我们要执行的可执行程序在什么位置

而..表示直接上级路径,可以帮助我们进行路径切换

下面举例:

③-i

功能:输出文件的 i 节点的索引信息。

前面的就是查看文件的inode编号 


2、pwd指令

语法:pwd

功能:显示用户当前所在的目录

一般与cd指令结合使用


3、cd指令

语法:cd 目录名

①cd ~

~是当前用户的工作目录,cd~是进入当前用户的家目录(工作目录)

对于普通用户而言:/home/XXX,就叫做XXX这个用户的家目录(工作目录)

对于root用户而言:/root

②cd -

 cd - :跳转至上一次我所处的路径中

关于cd ..的用法 

cd..就是退到上一级路径

第一个 / 是路径分隔符

第二个 / 是根目录

Linux的整个目录结构,本质上是一棵多叉树结构,/就是根结点

分为目录,文件/空目录,目录即它有还有左或右孩子(路上结点),文件/空目录也就是叶子结点

我们一般定位一个普通文件的时候,若采用路径的方式来进行定位,可以知道路径是唯一确定的,因为我们从叶子结点往上找,一直到根结点只会有一条路径

绝对路径和相对路径

/root/mytest/lesson1 像这种路径就叫做绝对路径,从根目录开始的

还有一种叫相对路径,即从当前路径往前退,例如/root/mytest/lesson1,我们现在在lesson1路径下,想找mytest里的文件add.c,那么两个方式分别是图中的两个红框:

第一个框是相对路径的访问方式,../是返回到上一级路径,然后再访问

第二个框是绝对路径的访问方式,从根目录开始访问

绝对路径:在日常操作中很少使用,一般会出现比较正式的场合,例如配置文件中

相对路径:日常操作(简单)

cd 绝对路径/相对路径 可以进行切换路径


4、touch指令

语法:touch [选项]... 文件...

功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件 

 第一次touch文件,文件的详细信息就是文件的创建时间

第二次touch文件,就会更新文件的最近修改时间,更新成为最新的时间


5、mkdir指令

语法:mkdir [选项] dirname

功能:在当前目录下创建一个名为 “dirname”的目录

常用选项:

-p

可以一次建立多个目录(创建一串路径)

tree指令

 tree可以以树状形式将目录显示出来

tree .就是显示当前路径

tree d1就是显示d1的路径  


6、rmdir指令

rmdir是与mkdir相对应的指令,mkdir是建立目录,rmdir是删除目录

语法:rmdir [dirName]

适用对象:具有当前目录操作权限的所有使用者

功能:删除空目录


7、rm指令

 rm命令可以同时删除文件或目录

语法:rm [-f-i-r-v] [dirName/dir]

适用对象:所有使用者

功能:删除文件或目录

常用选项:

①-f

即使文件属性为只读(即写保护),亦直接删除,即强制删除

②-r

删除目录及其下所有文件

下图可以说明各个功能:

③-i

-i 删除前逐一询问确认,输入y后完成删除,输入n就是不删除

 *

*是一种通配结构,rm -rf *.c就是强制删除所有.c结尾的文件


 8、man指令

访问Linux手册页的命令是man

语法: man 命令

在查看结束后,按q返回

面手册分为8章,我们只有前三章用的最多,分别是:

1、普通命令

2、系统调用

3、库函数(最常用)

用法即:man 3 printf


9、cp指令

语法:cp [选项] 源文件或目录 目标文件或目录

功能:  拷贝文件或目录

上图是用绝对路径将test路径下的test.c拷贝到lesson1路径下

 上图是用相对路径将test路径下的add.c拷贝到lesson1路径下

常见选项:

①-f

强行复制文件或目录, 不论目的文件或目录是否已经存在

②-r

递归处理,将指定目录下的文件与子目录一并处理

拷贝目录时,-r递归-f强制,能够使目录dir复制到上一路径中 

nano:

nano是一个简易的记事本

 用法如上,可在简易记事本里编写代码


10、mv指令

mv命令是move的缩写,可以用来移动文件或者将文件改名

语法: mv [选项] 源文件或目录 目标文件或目录

功能: 1、对文件或目录重命名;2、转储特定的一个文件或目录到其他的路径下

将dir中的sub.c移到当前路径下,sub.c就不在dir中了,和dir并排路径

文件和目录的重命名 


11、cat指令

cat [选项][文件]

功能: 查看目标文件的内容

在用nano文本编译器写好代码后,cat直接查看内容 

常用选项:

①-b

对非空输出行编号

②-n

对输出的所有行编号

③-s

不输出多行空行

还有一个与之对应的tac,cat是从第一行正这打印到最后一行,而tac就是倒着打印的,即:

 


12、more指令

语法:more [选项][文件]

功能:more命令,功能类似 cat

常用选项:

①-n

对输出的所有行编号

②q

退出more

 有1万个hello world输出重定向到myfile.txt中,我们如果直接cat,往上翻非常不方便,所以我们可以用more

显示整个页面后,按回车就可以逐行向下翻 ,按q退出


 13、less指令

less 的用法比起 more 更加的好用。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,less可以往前翻

语法: less [参数] 文件

功能: less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前 不会加载整个文件。

和more一样,都打印一个页面能显示的部分,但是less可以按上下键进行上下翻动 

常见选项:

①q

退出less

②-N  

显示每行的行号

③/字符串

向下搜索“字符串”的功能,例如/66即表示,搜索66所在的那一行及以下内容

④?字符串

向上搜索“字符串”的功能

⑤n

重复前一个搜索(与 / 或 ? 有关)


14、echo指令

语法:echo 【打印的东西】

功能:打印内容到显示器

输出重定向>与追加重定向 >>

输出重定向:从文件开始覆盖式的写入

追加重定向:从文件结尾,追加式的写入

>输出重定向的使用

  >输出重定向:①创建本来没有的文件②本来应该显示到显示器的内容,被写入到了文件中

 覆盖式写入,会改变原文件内容

>>追加重定向的使用

 从文件结尾追加式的写入,不会改变先前文件的内容

输出重定向和追加重定向本质都是写入

输入重定向<

本来应该从键盘中读取的内容,变为了从文件中读取(具体会在后面博客说到)

也有下面几种用法:

本来应该打印到显示器里,然后输出重定向到文件里 

先把文件名读到程序里,再重定向 




15、head指令

语法: head [参数]... [文件]... 

功能: head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。 

常用选项:

-n(行数) 显示行数

即为显示的行数显示的行数


16、tail指令

语法: tail[必要参数][选择参数][文件] 

功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。默认后10行

常见选项:

-n(行数) 显示行数


17、管道| 

如果想拿一万行中间的666到676,这11行呢,我们可以有两种解决方法

一、使用head和tail以及输出重定向的方法:

先拿出前677行放到tmp文件中

再拿出尾的11行即可完成要求 

 二、管道的方法

管道是传输数据的,有出口和入口

head -677 myfile.txt | tail -11    前面的head -677 myfile.txt本身应该显示到显示器上,而将它塞进管道文件,然后|后的tail -11本身是从文件中读取的,现在变为了从管道文件中读取,即完成了上面的要求

管道能够批量化,流水化处理数据,管道文件是内存级的文件,没有在磁盘上


18、时间相关的指令date

date可以查看时间

date 指定格式显示时间: date +%Y:%m:%d-%H:%M:%S

 date +%Y:%m:%d-%H:%M:%S 分别就是年月日,时分秒,其中的:分隔符是自己输入的,也可以更换

时间->时间戳 :date +%s (从1970/1/1-00:00到现在的秒数)

是单向递增的,具有唯一性

 时间戳->时间:date -d@[时间戳]


19、Cal指令 

功能:

用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份

常见选项:

-3 显示系统前一个月,当前月,下一个月的月历

-j  显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)

-y  显示当前年份的日历


20、find指令

find命令在目录结构中搜索文件

find ~ -name test.c(要查找的文件名)

 which指令

作用:在系统路径中,去查找特定的指令所在的路径


 21、alias指令

作用:起别名

 ls -al 起别名为列出,这时使用liechu,作用和ls -al一样


22、grep指令

语法: grep [选项] 搜寻字符串 文件

功能: 在文件中搜索字符串,将找到的行打印出来

即在myfile.txt文件中搜索所有关于666的 

常见选项:

①-i :

忽略大小写的不同,所以大小写视为相同

②-n :

顺便输出行号

③-v :

反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行

 xargs指令

作用:将管道的输出结果,作为命令行参数,交给后面程序

 将字符串变为选项运用


23、zip/unzip指令

yum install -y unzip zip(新服务器安装指令)

语法: zip 压缩文件.zip 目录或文件

功能: 将目录或文件压缩成zip格式

常见选项:

-r

递归处理,将指定目录下的所有文件和子目录一并处理

unzip name.zip -d (路径)

是解压到指定的路径下


有一个文件夹Pro,里面有两个文件 

打包压缩pro,压缩为pro.zip

将原始的 pro删除,再解压pro.zip 观察是否压缩成功

解压缩后观察得知,成功解压。这里是解压到当前目录下,也可以解压到指定目录下

将当前路径下的pro删除,然后观察/root路径下没有pro,这时用 unzip name.zip -d (路径),成功将pro解压到/root路径下了


24、tar指令

打包压缩指令

有以下常用的选项:

①-c :建立一个压缩文件的参数指令(create 的意思)

②-x :解开一个压缩文件的参数指令

③-z :要压缩或解压

④-f :要形成的名称

⑤-t :查看 tarfile 里面的文件

⑥-v :压缩的过程中显示文件

⑦-C : 解压到指定目录

可以直接-czvf使用,如果不需要显示过程,就直接-czf

 解压缩就是将选项c换位为选项x

想解压到指定路径下

 tar -xzf pro.tgz -C 指定路径



25、bc指令

输入bc进行计算,结束后输入quit退出

也可以和管道结合起来

 


26、uname –r指令

查看Linux的体系结构和内核版本 

 -a 查看所有的

-r 查看当前使用的


27、history指令

显示历史写的所有指令

可以与输出重定向结合保存在一个文件cmp.txt中,即:

history > cmp.txt


热键

①[Tab]按键:

命令补齐(补齐未输完的指令并加上空格)

②[Ctrl] + c按键:

让当前的程序停下

③[Ctrl] + d按键:

快速退出,也可 以用来取代exit

④[Ctrl] + r按键:

搜索历史写过的指令,输入部分就能查找历史所书写的

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

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

相关文章

PCL 三维点云边界提取(C++详细过程版)

边界提取 一、概述二、代码实现三、结果展示本文由CSDN点云侠原创,爬虫自重。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫。 一、概述 点云边界提取在PCL里有现成的调用函数,具体算法原理和实现代码见:PCL 点云边界提取。为充分了解pcl::BoundaryEsti…

最新ai系统ChatGPT程序源码+详细搭建教程+mj以图生图+Dall-E2绘画+支持GPT4+AI绘画+H5端+Prompt知识库

目录 一、前言 二、系统演示 三、功能模块 3.1 GPT模型提问 3.2 应用工作台 3.3 Midjourney专业绘画 3.4 mind思维导图 四、源码系统 4.1 前台演示站点 4.2 SparkAi源码下载 4.3 SparkAi系统文档 五、详细搭建教程 5.1 基础env环境配置 5.2 env.env文件配置 六、环境…

欧拉计划45题

Triangular, pentagonal, and hexagonal Triangle, pentagonal, and hexagonal numbers are generated by the following formulae: Triangle 1,3,6,10,15,… Pentagonal 1,5,12,22,35,… Hexagonal 1,6,15,28,45,… It can be verified…

性能比较 - Spring Boot 应用程序中的线程池与虚拟线程 (Project Loom)

本文比较了 Spring Boot 应用程序中的不同请求处理方法&#xff1a;ThreadPool、WebFlux、协程和虚拟线程 (Project Loom)。 在本文中&#xff0c;我们将简要描述并粗略比较可在 Spring Boot 应用程序中使用的各种请求处理方法的性能。 高效的请求处理在开发高性能后端…

镜像底层原理详解和基于Docker file创建镜像

目录 一、镜像底层原理 1.联合文件系统(UnionFS) 2.镜像加载原理 3.为什么Docker里的centos的大小才200M? 二、Dockerfile 1.简介 2.Dockerfile操作常用命令 &#xff08;1&#xff09;FORM 镜像 &#xff08;2&#xff09;MAINTAINER 维护人信息 &#xff08;3&…

电商系统架构设计系列(九):如何规划和设计分库分表?

上篇文章中&#xff0c;我给你留了一个思考题&#xff1a;分库分表该如何设计&#xff1f; 今天这篇文章&#xff0c;我们来聊一下如何规划和设计分库分表&#xff0c;以及要考虑哪些问题。 引言 当要解决海量数据的问题&#xff0c;就必须要用到分布式的存储集群了&#xff…

2023.8 - java - 泛型

泛型问题的引出&#xff1a; jdk 1.5 引出泛型 // package 泛型; public class index {public static void main (String[] args){test t new test();t.setContent("aaa");int a (int) t.getContent();System.out.println(a);} }class test{Object content;publi…

RNN+LSTM正弦sin信号预测 完整代码数据视频教程

视频讲解:RNN+LSTM正弦sin信号预测_哔哩哔哩_bilibili 效果演示: 数据展示: 完整代码: import torch import torch.nn as nn import torch.optim as optim import numpy as np import matplotlib.pyplot as plt import pandas as pd from sklearn.preprocessing import…

1.jvm和java体系结构

jvm简介 JVM&#xff1a;跨语言的平台 Java是目前应用最为广泛的软件开发平台之一。随着Java以及Java社区的不断壮大Java 也早已不再是简简单单的一门计算机语言了&#xff0c;它更是一个平台、一种文化、一个社区。 ● 作为一个平台&#xff0c;Java虚拟机扮演着举足轻重的…

无涯教程-Perl - use函数

描述 此函数将MODULE导出的所有功能(或仅LIST引用的功能)导入当前包的名称空间。有效等效于- BEGIN { require "Module.pm"; Module->import(); }也用于在当前脚本上强加编译器指令(编译指示),尽管从本质上讲它们只是模块。 请注意,use语句在编译时进行判断。在…

SpringBoot 模板模式实现优惠券逻辑

一、计算逻辑的类结构图 在这张图里&#xff0c;顶层接口 RuleTemplate 定义了 calculate 方法&#xff0c;抽象模板类 AbstractRuleTemplate 将通用的模板计算逻辑在 calculate 方法中实现&#xff0c;同时它还定义了一个抽象方法 calculateNewPrice 作为子类的扩展点。各个具…

三子棋游戏

目录 主函数test.c 菜单函数 选择实现 游戏函数 &#xff08;函数调用&#xff09; 打印棋盘数据 打印展示棋盘 玩家下棋 电脑下棋 判断输赢 循环 test.c总代码 头文件&函数声明game.h 头文件的包含 游戏符号声明 游戏函数声明 game.h总代码 游戏函数ga…

spring异步框架使用教程

背景 在需求开发过程中&#xff0c;为了提升效率&#xff0c;很容易就会遇到需要使用多线程的场景。这个时候一般都会选择建一个线程池去专门用来进行某一类动作&#xff0c;这种任务到来的时候往往伴随着大量的线程被创建调用。而还有另外一种场景是整个任务的执行耗时比较长…

Sui第四轮资助:16个团队瓜分

近日&#xff0c;Sui基金会公布了第四轮开发者资助名单&#xff0c;受助项目均是集中在DeFi、支付、基础设施、游戏、预言机等领域的Sui生态项目&#xff0c;他们是从2023年7月1日之前提交的申请中选出的。在此时间之后提交的任何项目目前正在审查中。 在前三轮资助中累积发放…

Linux Kernel 4.12 或将新增优化分析工具

到 7 月初&#xff0c;Linux Kernel 4.12 预计将为修复所有安全漏洞而奠定基础&#xff0c;另外新增的是一个分析工具&#xff0c;对于开发者优化启动时间时会有所帮助。 新的「个别任务统一模型」&#xff08;Per-Task Consistency Model&#xff09;为主要核心实时修补&#…

LinkedList

LinkedList的模拟实现&#xff08;底层是一个双向链表&#xff09;LinkedList使用 LinkedList的模拟实现&#xff08;底层是一个双向链表&#xff09; 无头双向链表&#xff1a;有两个指针&#xff1b;一个指向前一个节点的地址&#xff1b;一个指向后一个节点的地址。 节点定…

PHP加密与安全的最佳实践

PHP加密与安全的最佳实践 概述 在当今信息时代&#xff0c;数据安全是非常重要的。对于开发人员而言&#xff0c;掌握加密和安全的最佳实践是必不可少的。PHP作为一种常用的后端开发语言&#xff0c;提供了许多功能强大且易于使用的加密和安全性相关函数和类。本文将介绍一些P…

快妥稳!户外拍摄,5G黑科技更给力!

随着新媒体时代的到来&#xff0c;“户外实景美学”已然成为影视创作打磨爆款作品、衍生荧屏效应的一把“杀手锏”。恢弘山川、烟雨江南、异域小城、古朴村落……从一方影棚再到“天然片场”&#xff0c;主打一个“身临其境”般更加真实的视听体验。 杭州浙文影业影视公司是一家…

【HCIP】02.MSTP

运行RSTP/STP&#xff0c;局域网内所有的VLAN共享一棵生成树&#xff0c;被阻塞后的链路将不承载任何流量&#xff0c;无法在VLAN间实现数据流量的负载均衡&#xff0c;导致链路带宽利用率、设备资源利用率较低。802.1S,MSTP兼容STP和RSTP&#xff0c;通过建立多棵无环路的树&a…

深入解析:如何打造高效的直播视频美颜SDK

在当今数字化时代&#xff0c;视频直播已经成为人们交流、娱乐和信息传递的重要方式。然而&#xff0c;许多人在直播时都希望能够呈现出最佳的外观&#xff0c;这就需要高效的直播视频美颜技术。本文将深入解析如何打造高效的直播视频美颜SDK&#xff0c;以实现令人满意的视觉效…