linux指令笔记

 bash命令行讲解

lyt :是用户名

@iZbp1i65rwtrfbmjetete2b2Z :这个是主机名

~ :这个是当前目录

$ :这个是命令行提示符

每个指令都有不同的功能,大部分指令都可以带上选项来实现不同的效果。

一般指令和选项的格式:

指令 选项 

需要注意的是,指令和选项当中一定要有空格。

指令的本质就是可执行程序,指令存储在/usr/bin目录中。

热键

tab

功能:连续摁两下tab可以将未输入完的指令补全,不过以已经输入的字符串开头的指令不止一个,则会将这些满足条件的指令全部打印出来。

ctrl c

可以中止一个进程 

ctrl r

这是一个可以搜索你用过的历史命令的热键,使用后在命令行输入字符串,会自动帮你寻找曾经使用过的符合已经输入的字符串的那些历史命令。找不到或者不想找直接ctrl c退出就行。 

ctrl d

可以进行回退,详情上网搜。 

指令

ls

ls可以查看当前目录下的文件属性

 

 这是ls不附带任何选项的功能,文件名也是文件属性的一部分,所以单独的ls的功能很显而易见,就是显示文件属性当中的文件名。

-l

用了 -l 选项后可以看出,显示的文件属性除了文件名还显示了其他属性。

-a

指令的选项是可以连起来用的,可以 ls -a -l 这样分开来 也可以 ls -al 这样两个选项连起来

加了-a选项后,可以发现多了连个文件  . 和 .. 这两个文件分别指代当前目录和上级目录,前缀是 . 开头的文件是隐藏文件,而选项 -a 的效果就是将隐藏的文件也显示出来。

 -d

这两个文件中next是目录文件,one是普通文件。

可以看到,在ls指令后面加上文件,如果是普通文件那就是单独显示该普通文件的文件属性,如果是目录文件的话,显示的是该目录里面的文件的属性。

如果想要单独显示该目录的文件属性的话,需要在选项里再加上 -d 。

可以看到现在显示的就是这个目录自己的属性了。

pwd

pwd的功能非常简单,没有别的选项,直接打在命令行上,使用就可以,它的功能是显示,当前目录的绝对路径。

绝对路径就是从根目录为起点,到当前目录的路径。

而相对路径就是以当前目录为起点。

根目录就是最左边的 / ,其他的 / 是文件分隔符。

whoami

这个指令的应用也非常简单,直接输入命令行使用就可以,不带其他的,效果是告诉你当前使用的用户是哪一个。 

这个cky就是我创建的普通用户。 

cd 

cd命令是改变当前所处的目录,也就是想从一个目录到另外一个目录去就是靠的cd命令。

可以看到,原本我们所在的目录为test,绝对路径是/home/cky/test

使用了cd命令后,目录变成了next,绝对路径变成了/home/cky/test/next。

cd命令可以用相对路径和绝对路径两个方法进行改变当前目录,相对路径就是以当前目录为起点,绝对路径就是以根目录 / 为起点,每个文件之前需要有路径分隔符

cd命令还有一些特殊的用法

cd -

 cd -效果是跳转到之前所在的目录当中去。

第一次使用cd -是跳转到test目录中,而再用一次就回到了next目录。 

cd ~

cd ~是直接跳转到家目录当中去,每一个用户都有不同的家目录。 

我现在使用的是普通用户,普通用户的家目录在/home/该用户的用户名 

改成root账号试一下,root账号的家目录的位置和普通用户是不一样的。

可以看出来root账号的家目录是直接放在根目录当中的。 

touch

touch是创建普通文件的指令。 

格式

touch 文件名

touch new之后就多了一个文件 new

mkdir

mkdir是用来创建目录文件的,使用方法和touch一样

mkdir temp 后多了一个目录文件temp

要想分辨目录文件和普通文件可以看文件的属性。

ls -l可以显示文件的大部分属性,从左边开始最开头的字符就表示这这个文件的类型,现在只知道两种类型,目录文件和普通文件

-  就是普通文件。

d 就是目录文件。

mkdir也可以一次性创建多层目录结构 

-p

可以看到mkdir -p直接创建了一串目录,每个目录中间需要有文件分隔符。

tree

tree命令安装:

yum install  -y tree 

格式 tree 目录文件名

可以让该目录下的文件以树状图形式显示出来 

rm

格式:

rm 文件名

 rm可以用来删除文件,普通文件和目录文件都可以

 -r

要删除的目录当中有文件的情况下,删除时不被允许的,这时候就需要用到这个选项,rm -r删除目录文件的时候,会连带这个目录当中的所有文件一起被删除。

-f 

在一些情况下删除文件,会跳出来一个问题,询问你是否删除该文件,是在命令行输入 y,否在命令行输入 n

加上这个选项就可以避免每删除一个文件就要问一遍的情况。 

-i

加入这个选项可以让系统在你删除文件时询问你是否删除 

 *

* 这个符号是一个通配符,可以和许多指令配合使用,用rm在作例子

rm -rf  *.c  表示的是最后是以.c为结尾的文件都删掉,不关心你前面的

rm -rf test* 表示的是开头以test开始的文件都删掉,不关心后面的。

 man

man 是用来查询指令和系统调用,c语言函数等使用方法的命令

man 查找的手册分为好几部分,但是常用的只有 1,2,3这三个手册 

 man的使用方法:

man 几号手册 指令/函数/系统调用接口。(几号手册可加可不加,加了就是指定在这个手册查找,因为不同的手册可能会有同名的指令/函数/系统调用,不带几号手册,就按顺序来,从一号依次递增)。查好之后直接点击 q 就退出来了

 echo

echo 字符串 >/>>(重定向标识符) 文件名

echo指令可以把后面跟着的字符串原封不动的打印到显示器上。

同时如果加了重定向标识符和文件名则不会再打印到显示器上,而是打印到指定的文件里面,当该文件不存在时,则会创建该文件。

>一个符号代表覆盖重定向,会将该文件里原本有的内容给覆盖掉,再打印这个字符串。

>>两个符号是追加重定向,直接打印在该文件内容的后面

echo会在输出字符串后面自动换行

 cat

格式:

cat 文件名 

cat 可以显示文件的内容,里面写了什么

-n

可以对内容进行编号 

cp

格式:

cp 被拷贝的文件名 拷贝到的文件名

cp指令可以将一个文件完整的拷贝一份出来,不过需要注意的是,拷贝到的文件入果不存在,会新建一个文件,如果存在,则会被覆盖。 

如果不想拷贝到当前目录下,而是其他路径下,可以将拷贝到的文件名改成相对路径或者绝对路径。 

 -r

拷贝普通文件不需要用到这个选项,-r代表的是递归的意思,在拷贝目录文件的必须用上这个选项,不管目录里面是否有文件。

-f

这个选项可以让拷贝文件时不询问是否拷贝或者覆盖 

-i

这个文件可以让拷贝文件时询问是否拷贝或者覆盖 

需要注意的是 当 -i 和 -f 同时使用的时候,-i的优先级比较高。

 如果是root账号建立的文件,可能不会按照选项来执行,因为root建立的文件有一定的特殊性。

mv

mv指令有着重命名和剪切两个功能

使用格式:

mv 原文件/原文件名 目标文件/新文件名

mv指令如果只是在当前目录下使用,那就是只有重命名的功能

实际上原文件和目标文件这两个文件都是可以用绝对路径或者相对路径来表示的,可以将一个路径的文件放到另外一个路径下,如果在目标文件还写了文件名就成了既剪切又重命名的功能,没有文件名就是单纯的从一个路径剪切到另一个路径,文件名不变。

如果目标文件已经存在的普通文件话,那么就会覆盖该文件

如果目标文件是一个已经存在的目录,那么不会将原文件覆盖,而是会将该文件放到该目录下面。

alias

alias可以取别名

例子

alias tmp =‘ls -a -l’

这样tmp就等同于 ls -a -l 了

ll 就是取别名来的。 

 more

more适用于大文本,查看文件时,默认最多打印一屏幕的内容,摁回车键可以往下继续翻。

less

less可以说是more的上级,拥有less所有的功能,并且可以进行上翻和查找

格式:

less 目标文件 

使用方法:

?数字 是往上查找

/  数字 是往下查找

上翻和下翻分别上朝上的箭头和朝下的箭头

q 直接退出  

 head

head可以查找一个文件前n行的内容:

格式:

head -n 目标文件

n也可以不输入,默认显示前n行的内容。

 tail

tail可以查找一个文件倒数前n行的内容:

格式

tail -n 目标文件

n也可以不输入,默认显示倒数前n行的内容。

data

data是一个用来查看时间的指令

使用方法

data +%s 查看时间戳 

data -d@时间戳 查看这个时间戳对应的日期

时间戳是 一个单项递增的时间,从1970年一月一日开始计数,各个地区由于时差的原因会有些许差别。

find

find -name可以用来在目录下查找指定文件。

格式:

find 目录文件 -name 需要查找的目标文件

find查找也可以用通配符 * 来查找以某些字符开头或结尾的文件。

同时,find命令也会受权限的约束,只有在自己的家目录下才能不受约束的查找,或者用root账号。如果用普通用户去查找其他用户的家目录就会出现 permisssion denied。

之后可以通过修改权限的方式来取得查找的权限。

whitch

格式:

whitch 指令

whitch可以查找指令的路径

 grep

grep是一个行文本过滤,用来过滤文件的内容

效果:

可以指定一个文件搜索一个字符串,只要文件里面的行包含这个字符串,就把那些行打印在屏幕上

格式:

grep 【选项】字符串 目标文件

目标文件可以有多个,当有多个目标文件的时候,输出时还会把文件名一起打印出来

grep也可以和管道一起用,用了管道就不再需要目标文件了。 

 -v

这个选项可以将grep原本的功能反过来,也就是打印那些不包含这个字符串的行。

-n 

这个选项可以在输出到屏幕上的时候同时打印行号

-i

这个选项让那个字符可以忽略大小写

-R

使得目标文件可以是目录,查找该目录里面的所有文件 

 zip/unzip

zip是压缩文件的指令,unzip是解压缩文件的指令

格式:

zip 压缩后的文件名.zip 目标文件

如果不加选项的话,zip默认只压缩目标一个文件,如果目标文件是目录且目录里面有文件,就会遗漏下里面的文件

zip -r 压缩后的文件名.zip 目标文件

带上这个选项后就可以压缩目录里的文件里

unzip 压缩文件

不加任何选项的话默认解压缩到当前文件。

unzip 压缩文件 -d 路径

这样就可以解压缩到指定路径了。

 zip/unzip的安装方法

yum install -y zip unzip

tar

tar的用法太多,就只举例三个

tar czf 压缩后的文件名.tgz 目标文件  可以压缩文件

tar fzf  压缩文件   可以预览压缩包里的文件

tar xzf 压缩文件  -C 指定路径 可以解压缩文件到指定路径,不带C和路径默认解压缩到当前路径

选项的缩写都有各自的含义

c 建立一个压缩文件的参数指令(creat的意思)

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

t 查看压缩文件里的文件

z 具有gzip的属性,用gzip来压缩

f  给压缩文件命名,这个参数一定要加在最后面,直接接压缩文件名。

bc

直接输入这个指令就可以打开linux自带的计算器

使用quit退出

也可以重定向数字字符串到管道,再交给bc

例:

echo : ”1+2+3“ | bc

会直接将运算结果打印在屏幕上。

uname

uname可以获取电脑和操作系统的相关信息,详情往上查就行

 history

记录最近使用的1000条命令

chmod

文件的修改需要用到一个指令chmod 

格式 chomd 修改权限 目标文件

chmod修该权限有两种方法

例1:

chmod u+rwx,g+rwx,o+rwx 目标文件

chmod a+rwx 目标文件

u表示拥有者的权限,g表示所属组的权限,o表示其他人的权限。

+ 表示加上权限

- 表示减去权限

a 是all 一次性修改拥有者,所属组和其他人的权限。

例2:

chmod 777 目标文件

这三个数是八进制数

第一个数代表着拥有者的权限

第二个数代表着所属组的权限

第三个数代表着其他人的权限

将一个7的八进制数分解为二进制:

111

可以看到是三个二进制,刚好可以对应三个权限。第一个二进制是读权限,第二个二进制是写权限,第三个二进制数是执行权限,1表示的就是拥有对应的权限,也就是说,拥有者和所属组以及其他人的权限也可以这样对应,所有就可以用三个八进制数来控制对应的权限。

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

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

相关文章

【openEuler/Centos】yum安装软件报Error: GPG check FAILED【分析根因弄明白,亲测有效不浪费时间】

yum安装软件报Error: GPG check FAILED 环境信息:cat /etc/openEuler-release openEuler release 22.03 (LTS-SP1) 报错信息 The downloaded packages were saved in cache until the next successful transaction. You can remove cached packages by executin…

当我们在微服务中使用API网关时,它是否会成为系统的瓶颈?这种潜在的瓶颈如何评估和解决?如何在微服务架构中保证高效请求流量?|API网关|微服务|异步处理

目录 1. API网关在微服务中的角色与重要性 2. API网关瓶颈的评估 2.1 请求延迟分析 2.2 并发请求量监控 2.3 内存和CPU使用情况 2.4 限流和熔断机制评估 2.5 日志分析 3. API网关瓶颈的解决方案 3.1 缓存机制优化 3.2 负载均衡优化 3.3 异步处理与消息队列 3.4 限流…

记录如何在RK3588板子上跑通paddle的OCR模型

官网文档地址 rknn_zoo RKNPU2_SDK RKNN Model Zoo 一、PC电脑是Ubuntu22.04系统中完成环境搭建(板子是20.04) 安装模型转换环境 ​conda create -n rknn2 python3.10 conda activate rknn2 安装Ubuntu依赖包 su…

STM32 第18章 SysTick--系统定时器

时间:2024.10.26-10.27 参考资料: 《零死角玩转STM32》“SysTick--系统定时器”章节 一、学习内容 1.SysTick简介 1.1 SysTick: 系统定时器,24位,只能递减,存在于内核,嵌套在NVIC中,所有的Cortex-M内核的单片机都具有这个定时器。 官方参考手册里的介绍: 系统嘀…

riscv uboot 启动流程分析 - SPL启动流程

分析uboot 启动流程硬件:启明智显推出M4核心板 (https://gitee.com/qiming-zhixian/m4-openwrt) 1.U-boot和SPL概述 U-Boot 分为 uboot-spl 和 uboot 两个组成部分。SPL 是 Secondary Program Loader 的简称,第二阶段程序加载器。…

重塑在线软件开发新纪元:集成高效安全特性,深度解析与评估会员与促销管理系统的系统架构设计

案例 阅读以下关于软件架构设计与评估的叙述,回答问题1和问题2。 【题目】 某电子商务公司拟升级其会员与促销管理系统,向用户提供个性化服务,提高用户的粘性。在项目立项之初,公司领导层一致认为本次升级的主要目标是提升会员管…

简单的udp程序

文章目录 1. 预备知识1.1 源IP地址和目的IP地址1.2 端口号1.3 套接字初识1.4 tcp协议和udp协议简单认识1.5 网络字节序 2. udp程序2.1 创建套接字(socket)的系统调用2.2 bind()2.2.1 初始化一个sockaddr_in结构体2.2.2 inet_addr函数2.2.3 0.0.0.02.2.4 …

深入解析东芝TB62261FTG,步进电机驱动方案

TB62261FTG是一款由东芝推出的两相双极步进电机驱动器,采用了BiCD工艺,能够提供高效的电机控制。这款芯片具有多种优秀的功能,包括PWM斩波、内置电流调节、低导通电阻的MOSFET以及多种步进操作模式,使其非常适合用于需要精确运动控…

一步一步从微信小程序获取asp.net Core API的数据

前面我们说过,如何使用微信小程序获取asp.net的数据,这里我们继续介绍如何获取asp.net core api的数据。两者之间还是有一些差别的。本篇博文旨在详细介绍如何一步一步从微信小程序获取asp.net Core API的数据。 文章目录 一、建立并了解asp.net core we…

RabbitMQ集群搭建及使用

1. 概述 前提条件:linux服务器下已经安装好了docker服务。 本文档将搭建一个三台RabbitMQ的集群,包括三个RabbitMQ容器安装在同一服务器和三台不同的服务器。 2. 集群搭建 在一台服务器上创建三个RabbitMQ容器。 2.1.1. 创建容器 执行以下命令创建三…

合理利用IPIDEA代理IP,优化数据采集效率!

一、前言 在全球化与信息化交织的当代社会,数据已成为驱动商业智慧与技术革新的核心引擎。网络,作为信息汇聚与交流的枢纽,不仅是人们获取知识的窗口,更是商业活动与技术创新的广阔舞台。在这个信息繁荣的时代,Python…

Docker 实践与应用举例教程:从入门到精通

Docker 实践与应用举例教程:从入门到精通 引言 在现代软件开发中,Docker 已成为一种不可或缺的工具。它通过容器化技术简化了应用的部署、管理和扩展,极大地提高了开发和运维的效率。本文将详细介绍 Docker 的基本概念、安装步骤、常用命令…

开放式耳机哪个品牌音质好?音质最好的开放式耳机推荐!

如今,开放式耳机市场日益繁荣,成为了众多音乐爱好者和追求舒适佩戴体验者的新宠。然而,面对琳琅满目的品牌和产品,消费者往往陷入选择的困境。音质,作为衡量一款耳机优劣的关键因素,更是备受关注。究竟哪个…

反编译华为-研究功耗联网监控日志

摘要 待机功耗中联网目前已知的盲点:App自己都不知道的push类型的被动联网、app下载场景所需时长、组播联网、路由器打醒AP。 竞品 策略 华为 灭屏使用handler定时检测(若灭屏30分钟内则周期1分钟,否则为2分钟),检…

【Unity踩坑】UWP应用未通过Windows应用认证:API不支持

在将Unity项目导出为XAML类型的UWP项目后,通过Visual Studio打包成功,但在进行Windows应用认证时结果是Failed。 其中的错误是某些dll里用到了Windows SDK不支持的API。 本次问题中涉及到的具体dll有两个:gilzoide-sqlite-net.dll和D3D12Cor…

【Linux网络】传输层协议UDP与TCP

W...Y的主页 😊 代码仓库分享 💕 目录 传输层 再谈端口号 ​编辑 端口号范围划分 认识知名端口号(Well-Know Port Number) netstat pidof UDP协议 UDP协议端格式 UDP的特点 面向数据报 UDP的缓冲区 UDP使用注意事项 基于UDP的应用层协议…

开源实时数仓的构建

设计计思路 基本思路 开源数据平台的设计思路是通过 Flink SQL Batch、StartRocks SQL 、StartRocks物化视图 的能力实现一个离线任务的开发;使用 DolphinScheduler 进行离线工作流编排和调度;通过 Flink CDC 和 Flink SQL 实现流处理能力,进…

Redis+Lua限流的四种算法

1. 固定窗口(Fixed Window) 原理: 固定窗口算法将时间划分为固定的时间段(窗口),比如 1 秒、1 分钟等。在每个时间段内,允许最多一定数量的请求。如果请求超出配额,则拒绝。 优点…

软工毕设开题建议

文章目录 🚩 1 前言1.1 选题注意事项1.1.1 难度怎么把控?1.1.2 题目名称怎么取? 1.2 开题选题推荐1.2.1 起因1.2.2 核心- 如何避坑(重中之重)1.2.3 怎么办呢? 🚩2 选题概览🚩 3 项目概览题目1 : 深度学习社…

文档解析与向量化技术加速 RAG 应用落地

在不久前举办的 AICon 全球人工智能开发与应用大会上,合合信息智能创新事业部研发总监,复旦博士常扬从 RAG 应用落地时常见问题与需求(文档解析、检索精度)出发,分享了针对性的高精度、高泛化性、多版面多元素识别支持…