Linux入门操作
pwd 查看当前目录 与 自动补全
文件详情
drwxrwxr-x d代表文件夹 -代表文件
其中rwx rwx r-x r是可读 w是可写 x 执行
第一组(前三个)指文件拥有者的权限
第二组(中三个)代表文件拥有的组的权限
第三组(后三个)代表其他用户的权限
cd 切换文件夹
cd /home 绝对路径(以根目录开头)
cd admin 相对路径,表示进入该目录的下一级叫做admin的文件夹
cd .. 返回上一级目录
cd ../同级文件 进入同级目录下的“同级文件”(先上一级再下一级即同级)
cd / 回到根目录(“/”即根目录)
cd或cd ~ 回到自己家的的目录,即/home/admin(这里假设admin是自己的家)
cd - 回退(在最近操作过的两个目录里来回切换)
ls 查看当前目录的内容
ls 查看当前目录的内容
ls -a 显示所有的文件(a即all),即包含隐藏文件,隐藏文件是以“.”开头的文件
ls -l 显示当前目录的详细内容(包括文件大小、创建时间等)
ls -lh 显示详情并把文件大小以人性化的方式显示,如4096变成4.0K(省略了bit比特)
ls -lah 显示所有文件的详情并把文件大小人性化(l a h顺序不定,任意组合)
ll 等价于 ls -l ,那么比如ll-h就相当于ls-lh
扩展
mkdir 创建文件夹
mkdir 文件夹 相对路径,在当前目录下创建文件夹
mkdir /home/admin/文件夹 绝对路径,注意在自己家里才有权限
mkdir /home/admin/a/b -p 如果上级目录不存在,加-p自动创建父目录
mkdir a b 在当前目录创建多个文件夹(Linux不强制要求文件要有扩展名,但是建议有)
mkdir a/{c,d} 在指定目录下创建多个文件夹
mkdir .abc 创建隐藏目录或文件夹(隐藏文件以.开头 )
touch 创建空文件
touch abc.txt 在当前目录下创建 如果指定了目录,必须保证上级目录存在
touch .abc 创建隐藏文件
gedit 创建或打开文件
gedit a.txt 使用记事本打开a.txt,如果没有就创建再打开(因此touch单纯只是创建文件用的少)
rm 删除文件
rm a.txt 删除文件
rm a -r 删除目录\文件夹
rm * 删除当前目录下的所有内容 ,不删除隐藏文件(rm .a才能删隐藏文件). 和 .. 是删不掉的
cp 复制
cp 1.txt 2.txt 将1.txt拷贝到2.txt(会覆盖)
cp a b -r 拷贝a到b文件夹
mv 移动(重命名)
同目录下是重命名,不同目录下是移动
mv 1.txt 2.txt 重命名(将1.txt重命名为2.txt)
mv 1.txt a 将1.txt移动到a目录下
mv 1.txt a/2.txt 将1.txt移动到a目录下并重命名为2.txt
mv a b 如果b不存在表示将a重命名为b,如果b存在表示将a放到b目录下
重定向
ls > 1.txt 把命令返回的结果输出到文件中,会覆盖之前的数据,结果显示在屏幕上
ls > >1.txt 把命令返回的结果输出到文件中,追加的方式
cat 1.txt 将文件中的内容返回到屏幕中(可显示多个),就不用像gedit打开一个文件程序查看
cat 1.txt 2.txt >3.txt 把多个文件的内容合并到新文件中
more 查看多内容的文件
more 1.txt cat是从文件末尾开始的,more从头开始。按空格键向下翻页按b往回翻页,按q退出
“|”管道(把简单的命令组合成复杂的命令)
ls -l / | more 把左边的命令返回结果交给右边命令进行处理(这样就不用先放到文件再more了)
ln 链接
软链接
软链接本事不存储内容,只记录源文件名称(即如果删了该文件再创建一个同名的文件链接还在)
ln -s 1.txt l_link 给1.txt创建一个软链接叫l_link,相当于Windows中的快捷方式
ln -s /home/adime/1.txt ~/1_link 给其他目录创建一个软链接时源文件要写绝对路径,~是家目录
ln -s a a_link 给目录创建软链接
硬链接
硬链接本身占空间,相当于把源文件复制一份,与源文件同步变化,不能给目录创建硬链接
使用ll查看时,有一个数字在,代表有几个文件能同步发生变化即有几个拷贝
ln 1.txt 1.hard_link 给1.txt创建一个硬链接叫hard_link
grep 查找文件内容
grep hello text.txt 在text.txt中查找包含hello的内容,只要一行中有hello就会显示
grep ^h text.txt 在text.txt中查找h开头的内容,即可用正则表达式
grep -niv hello text.txt n显示查找到的内容的行号,i 查找时不区分大小写,v反向查找即查找不包含hello的行,可以组合着用,比如-n就单单显示行号
grep -n hello . -r 表示找当前目录下有hello的,“.”表示当前目录,“..”表示上层目录
grep -n hello /home/admin -r 查找整个目录中的所有文件,包含hello的内容
sed 编辑文件
sed -i 3a\abc 1.txt 在文件1.txt的第三行(-i改文件)后增加(a代表增加)内容abc(新起一行)
sed 's\a\b\g' 1.txt 将1.txt中的a替换(s代表替换)成b(\g表示全局匹配而不仅仅是匹配第一个)
sed '1,3d' 1.txt 删除文件1.txt中的第一到第三行(d代表删除)
sed '\%aa%d' 1.txt 删除1.txt中含有字符串“aa”的行
sed -n '1,3p' 1.txt 显示1.txt中的一到三行(p是显示常与-n连用)
awk 文本处理
其中NF代表的是一个文本文件中一行中的字段个数,NR代表的是这个文本文件的行数
awk '{print$1,$3}' 1.txt 打印1.txt中的第一列和第三列(以空格来分隔列,否则当成一列)
awk 'length>3' 1.txt 显示出1.txt中长度大于3的行
awk -F, '{print$1,$3}' 1.txt 打印1.txt中的第一列和第三列,以逗号分隔(-F可以指定分隔符)
awk -va=2 '{print$1,$1+a}' 1.txt 比如第一列是1,那么打印1 3(-v设置变量 a是变量)
find 查找文件
find /home -name 1.txt 在home目录下查找文件名为1.txt 的文件
find /home -name '*txt' 在home 目录下查找以txt 结尾的文件
tar 归档 打包
打包
tar cvf a.tar 1.txt 2.txt f必须放在最后,f后面的第一个参数代表要生成的文件名,后面所有参数是要打包的文件
tar tf a.tar 列出包里面的文件
解包
tar xvf a.tar 如果没写目录,把包里面的文件解开放到当前目录
tar xvf a.tar -C tar 解包到指定文件夹tar,文件夹需要提前创建好
压缩
1.打包
tar cf a.tar 生成a.tar文件
2.压缩
gzip -r a.tar 生成a.tar.ze文件
解压
1.解压
gzip -d a.tar.gz 生成a.tar 文件
2.解包
tar xf a.tar -C ~/atar 解压到指定文件夹
一步到位 打包并且压缩
tar czf b.tar.gz *txt 把所有的txt文件以gzip的格式打包并且压缩成b.tar.gz
一步到位解压并且解包
tar zxf b.tar.gz -C btar 以gzip 的方式解压并解包到btar
bzip2
压缩
tar jcf j.tar.bz2 *txt
解压
tar xjf j.tar.bz2 -C jtatr
zip
zip -r zz *txt 生成的压缩文件为zz,不需要写扩展名,它会自动生成zip扩展名
unzip -d z zz.zip 将zz.zip解压到z,解压时会自动创建目录
压缩率
zip<gzip<bzip2
通用性
zip>gzip>bzip2
vim
vi有三种基本工作模式
- 命令模式
- 文本输入模式
- 末行模式
按:w保存,:q退出,:q!不保存强制退出,:wq保存并退出 或直接 按shift+z+z保存退出
进入插入模式
i:插入光标前一个字符
I:插入行首
a:插入光标后一个字符
A:插入行末
o:向下新开一行,插入行首
O:向上新开一行,插入行首
进入命令模式
ESC:从插入模式或末行模式进入命令模式
h:左移
j:下移
k:上移
l:右移
M:光标移动到中间行
L:光标移动到屏幕最后一行
G:移动到指定行,行号-G
w:向后一次移动一个字
b:向前一次移动一个字
{:按段移动,上移
}:按段移,下移
Ctr -d:向下翻半屏
Ctr-u:向上翻半屏
Ctr-f:向下翻一屏
Ctr-b:向上翻一屏
gg:光标移动到文件开头
G:光标移动到文件末尾
删除命令:
x:删除光标后一个字符
X:删除光标前一个字符
dd:删除光标所在行,n dd 删除指定的行数
dD:删除光标前本行所有内容,不包含光标所在字符
dw:删除光标开始位置的字,包括光标所在的字符
撤销指令
u:一步一步撤销
Ctr-r:反撤销
重复命令
.:重复上一次操作的命令
文本行移动:
>>:文本行右移
<<:文本行左移
复制粘贴
yy:复制当前行,n yy 复制 n 行
p:在光标所在位置向下新开辟一行,粘贴
可视模式
v:按字符移动,选中文本
V:按行移动,选中文本可视模式可以配合d,y,>>,<<实现对文本的删除,复制,左右移动
替换操作
r:替换当前字符
R:替换当前行光标后的字符,直到按ESC
查找命令
/:str查找
n:下一个
N:上一个
相关文章:

Linux入门操作
pwd 查看当前目录 与 自动补全 文件详情 drwxrwxr-x d代表文件夹 -代表文件 其中rwx rwx r-x r是可读 w是可写 x 执行 第一组(前三个)指文件拥有者的权限 第二组(中三个)代表文件拥有的组的权限 第三组(后三个&am…...

1。C语言基础知识回顾
学习嵌入式的C基础知识,主要包括几个核心知识点:三大语法结构、常用的数据类型、函数、结构体、指针、文件操作。 一、顺序结构 程序自上而下依次执行、没有分支、代码简单。 常见顺序结构有:四则运算:,-࿰…...

学习如何通过构建一个简单的JavaScript颜色游戏来操作DOM
学习如何通过构建一个简单的JavaScript颜色游戏来操作DOM 题目要求 我们将构建一个简单的颜色猜谜游戏。每次游戏启动时,都会选择一个随机的RGB颜色代码。根据游戏模式,我们将在屏幕上提供三个(简单)或六个(困难&…...

【算法学习】—n皇后问题(回溯法)
【算法学习】—n皇后问题(回溯法) 1. 什么是回溯法? 相信"迷宫"是许多人儿时的回忆,大家小时候一定都玩过迷宫游戏。我们从不用别人教,都知道走迷宫的策略是: 当遇到一个岔路口,会有以下两种情况…...
万亿OTA市场进入新爆发期,2025或迎中国汽车软件付费元年
伴随智能汽车市场规模发展,越来越多的汽车产品具备OTA能力,功能的优化、以及服务的差异化,成为了车企竞争的新战场。 例如,今年初,问界M5 EV迎来了首次OTA升级,升级内容覆盖用户在实际用车中的多个场景&am…...

Android硬件通信之 蓝牙Mesh通信
一,简介 蓝牙4.0以下称为传统蓝牙,4.0以上是低功耗蓝牙,5.0开始主打物联网 5.0协议蓝牙最重要的技术就是Mesh组网,实现1对多,多对多的无线通信。即从点对点传输发展为网络拓扑结构,主要领域如灯光控制等&…...
PG数据库实现bool自动转smallint的方式
删除函数: 语法: DROP FUNCTION IF EXISTS your_schema_name.function_name(arg_type1, arg_type2) CASCADE RESTRICT; 实例: DROP FUNCTION IF EXISTS platformyw.boolean_to_smallint(bool) CASCADE RESTRICT; 查询是否存在函数 语法: SELE…...

易观千帆 | 2023年3月证券APP月活跃用户规模盘点
易观:2023年3月证券服务应用活跃人数14131.58万人,相较上月,环比增长0.61%,同比增长0.60%;2023年3月自营类证券服务应用Top10 活跃人数6221.44万人,环比增长0.08%;2023年3月第三方证券服务应用T…...

2023年江苏专转本成绩查询步骤
2023年江苏专转本成绩查询时间 2023年江苏专转本成绩查询时间预计在5月初,参加考试的考生,可以关注考试院发布的消息。江苏专转本考生可在规定时间内在省教育考试院网,在查询中心页面中输入准考证号和身份证号进行查询,或者拨…...
JavaScript中sort()函数
sort()函数是javascript中自带函数,这个函数的功能是排序。 使用sort()函数时,函数参数如果不设置的话,以默认方式进行排序,就是以字母顺序进行排序,准确的讲就是按照字符编码的顺序进行排序。 var arr [3,2,3,34,1…...

泰克Tektronix DPO5204B混合信号示波器
特征 带宽:2 GHz输入通道:4采样率:1 或 2 个通道上为 5 GS/s、10 GS/s记录长度:所有 4 个通道 25M,50M:1 或 2 个通道上升时间:175 皮秒MultiView zoom™ 记录长度高达 250 兆点>250,000 wf…...

突破传统监测模式:业务状态监控HM的新思路
作者:京东保险 管顺利 一、传统监控系统的盲区,如何打造业务状态监控。 在系统架构设计中非常重要的一环是要做数据监控和数据最终一致性,关于一致性的补偿,已经由算法部的大佬总结过就不在赘述。这里主要讲如何去补偿ÿ…...

0Ω电阻在PCB板中的5大常见作用
在PCB板中,时常见到一些阻值为0Ω的电阻。我们都知道,在电路中,电阻的作用是阻碍电流,而0Ω电阻显然失去了这个作用。那它存在于PCB板中的原因是什么呢?今天我们一探究竟。 1、充当跳线 在电路中,0Ω电阻…...

分布式消息队列Kafka(三)- 服务节点Broker
1.Kafka Broker 工作流程 (1)zookeeper中存储的kafka信息 1)启动 Zookeeper 客户端。 [zrclasshadoop102 zookeeper-3.5.7]$ bin/zkCli.sh 2)通过 ls 命令可以查看 kafka 相关信息。 [zk: localhost:2181(CONNECTED) 2]…...
蠕动泵说明书_RDB
RDB_2T-S蠕 动 泵 概述 蠕动灌装泵是一种高性能、高质量的泵。采用先进的微处理技术及通讯方式做成的控制器和步进电机驱动器,配以诚合最新研制出的泵头,使产品在稳定性、先进性和性价比上达到一个新的高度。适用饮料、保健品、制药、精细化工等诸流量…...
浅谈react如何自定义hooks
react 自定义 hooks 简介 一句话:使用自定义hooks可以将某些组件逻辑提取到可重用的函数中。 自定义hooks是一个从use开始的调用其他hooks的Javascript函数。 下面以一个案例: 新闻发布操作,来简单说一下react 自定义 hooks。 不使用自定义hooks时 …...

如何优雅的写个try catch的方式!
软件开发过程中,不可避免的是需要处理各种异常,就我自己来说,至少有一半以上的时间都是在处理各种异常情况,所以代码中就会出现大量的try {...} catch {...} finally {...} 代码块,不仅有大量的冗余代码,而…...

海尔智家:智慧场景掌握「主动」权,用户体验才有话语权
2023年1月,《福布斯》AI专栏作家Rob Toews发布了年度AI发展预测,指出人工智能的发展将带来涉及各行业、跨学科领域的深远影响。变革将至,全球已掀起生成式AI热,以自然语言处理为代表的人工智能技术在快速进化,积极拥抱…...

基于铜锁,在前端对登录密码进行加密,实现隐私数据保密性
本文将基于 铜锁(tongsuo)开源基础密码库实现前端对用户登录密码的加密,从而实现前端隐私数据的保密性。 首先,铜锁密码库是一个提供现代密码学算法和安全通信协议的开源基础密码库,在中国商用密码算法,例…...
LVS的小总结
LVS的工作模式及其工作过程: LVS 有三种负载均衡的模式,分别是VS/NAT(nat 模式)、VS/DR(路由模式)、VS/TUN(隧道模式)。 1、NAT模式(NAT模式) 原理&#x…...

stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...

Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序
一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)
船舶制造装配管理现状:装配工作依赖人工经验,装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书,但在实际执行中,工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...
作为测试我们应该关注redis哪些方面
1、功能测试 数据结构操作:验证字符串、列表、哈希、集合和有序的基本操作是否正确 持久化:测试aof和aof持久化机制,确保数据在开启后正确恢复。 事务:检查事务的原子性和回滚机制。 发布订阅:确保消息正确传递。 2、性…...

如何应对敏捷转型中的团队阻力
应对敏捷转型中的团队阻力需要明确沟通敏捷转型目的、提升团队参与感、提供充分的培训与支持、逐步推进敏捷实践、建立清晰的奖励和反馈机制。其中,明确沟通敏捷转型目的尤为关键,团队成员只有清晰理解转型背后的原因和利益,才能降低对变化的…...
「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案
在移动互联网营销竞争白热化的当下,推客小程序系统凭借其裂变传播、精准营销等特性,成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径,助力开发者打造具有市场竞争力的营销工具。 一、系统核心功能架构&…...

【51单片机】4. 模块化编程与LCD1602Debug
1. 什么是模块化编程 传统编程会将所有函数放在main.c中,如果使用的模块多,一个文件内会有很多代码,不利于组织和管理 模块化编程则是将各个模块的代码放在不同的.c文件里,在.h文件里提供外部可调用函数声明,其他.c文…...

使用ch340继电器完成随机断电测试
前言 如图所示是市面上常见的OTA压测继电器,通过ch340串口模块完成对继电器的分路控制,这里我编写了一个脚本方便对4路继电器的控制,可以设置开启时间,关闭时间,复位等功能 软件界面 在设备管理器查看串口号后&…...
视觉slam--框架
视觉里程计的框架 传感器 VO--front end VO的缺点 后端--back end 后端对什么数据进行优化 利用什么数据进行优化的 后端是怎么进行优化的 回环检测 建图 建图是指构建地图的过程。 构建的地图是点云地图还是什么信息的地图? 建图并没有一个固定的形式和算法…...