Linux第二课:LinuxC高级 学习记录day02
2.4、shell中的特殊字符
2.4.4、命令置换符` ` 或者 $()
反引号:esc下面的按键,英文状态下直接按
功能:将一个命令的输出作为另一个命令的参数
echo 不会认为hostname是一个命令
加上` `之后,先执行hostname,拿到主机名之后,作为参数放到is后面,输出
2.5、系统维护命令
1、man man :查看man手册
第一个章节:shell命令
第二个章节:系统调用
第三个章节:C库
2、su:切换用户
su:默认切换到 root
su:用户名——切换到指定的用户
exit:退出切换的用户
3、sudo passwd 用户名:改用户的密码
4、echo “输出内容”:向终端输出内容,默认换行
echo -n "输出内容":输出不换行
5、date:查看当前系统的日期
6、clear:清屏
7、df -Th 或者 df -h:查看磁盘空间
2.6、用户管理命令
2.6.1、新建用户
sudo adduser 用户名
给新建用户添加sudo权限:
1)切换到管理员用户:su
2)给用户添加sudo权限的文件:vi /etc/sudoers
3)添加:用户名 ALL=(ALL:ALL) ALL
2.6.2、删除用户
sudo deluser 用户名:删除用户,但是不会删除用户的主目录,残余的主目录可以直接使用rm -r
sudo deluser --remove-home 用户名:删除用户的同时,删除用户的主目录
sudo userdel -r 用户名:删除用户的同时,删除用户的主目录
sudo userdel -rf 用户名:强制删除
2.7、进程管理命令
进程:程序运行一次的过程,动态的
程序:存放在磁盘空间上的可执行文件,静态的
1、.c文件:源代码
2、a,out:程序3、a.out运行的过程:进程
2.7.1、ps:查看进程状态
ps -aux
USER | PID | %CPU | %MEM | VSZ | RSS | TTY | STAT | START | TIME | COMMAND |
用户 | 进程id | —— | —— | —— | —— | 终端 ?:不依赖终端 | 状态 |
PID:唯一标识id号
ps -ef:查看父进程的id:PPID
ps -ajx:PPID PID PGID(组id) SID(会话ID)
通过man ps查看关于进程的状态信息
进程状态:
D 不可中断睡眠态
R 运行态
S 可中断睡眠态
T 停止态
t 调试器打断
X 死亡态
Z 僵尸态——无法回收
< 高优先级
N 低优先级
L 锁定到内存中
s 会话组组长
l 线程
+ 前台进程
./a.out &:将程序放在后台运行
fg 编号:将后台运行的进程,拉到前台运行
ctrl z:将前台运行的进程暂停,并且放在后台
bg 编号:将后台暂停的进程,在后台运行
2.7.2、top:动态显示进程的状态信息
// top里面的进程状态只能显示一个字符
PR:优先级,默认20 PR=20+NI
// 值越小优先级越高
// 只要小于20,就是高优先级
NI:更改优先级的值,整数,一般-20到+19
// 超过-20和+19的值,按照-20和+19计算
2.7.3、renice:修改正在运行的进程的优先级
sudo renice -n num PID
num:要修改的NI值
PID:要修改的进程id
2.7.4、nice:定制运行的优先级
sudo nice -n num ./可执行文件
2.7.5、kill:发送信号
kill -l:查看Linux的信号
2) SIGINT ctrl+c 结束进程3) SIGQUIT 退出
4) SIGILL 结束进程
9) SIGKILL 杀死进程 不可忽略信号
10) SIGUSR1 未定义功能
12) SIGUSR2 未定义功能
13) SIGPIPE 管道破裂信号
14) SIGALRM 时钟信号
17) SIGCHLD 子进程状态发生改变会给父进程发送
19) SIGSTOP 停止 不可忽略信号
kill num PID:给指定进程发送num信号
kill PID:默认执行9信号
2.8、文件系统命令
2.8.1、文件系统类型
磁盘文件系统:指本地主机中实际可以访问到的文件系统,包括硬盘、CD-ROM、DVD、USB存储器、磁盘阵列等。常见文件系统格式有:autofs、coda、Ext(Extended File sytem,扩展文件系统)、Ext2、Ext3、VFAT、ISO9660(通常是CD-ROM)、UFS(Unix File System,Unix文件系统)、ReiserFS、XFS、JFS、FAT(File Allocation Table,文件分配表)、FAT16、FAT32、NTFS(New Technology File System)等;
网络文件系统:是可以远程访问的文件系统,这种文件系统在服务器端仍是本地的磁盘文件系统,客户机通过网络远程访问数据。常见文件系统格式有:NFS(Network File System,网络文件系统)、Samba(SMB/CIFS)、AFP(Apple Filling Protocol,Apple文件归档协议)和WebDAV等;
专有/虚拟文件系统:不驻留在磁盘上的文件系统。常见格式有:TMPFS(临时文件系统)、PROCFS(Process File System,进程文件系统)和LOOPBACKFS(Loopback File
2.8.2、linux文件
/bin:存放系统中最常用的可执行文件
/dev:存放所有设备文件,包括硬盘、分区、键盘、鼠标、USB、tty等
/home:用户主目录的默认位置
/mnt:该目录通常用于作为被挂载的文件系统的挂载点
/usr:用于存放与系统用户直接有关的文件和目录,例如应用程序及支持它们的库文件
2.8.3、文件操作
1、file 文件名:查找文件属性信息
a.out:文件名
ELF:类型
64-bit LSB shared object:小端存储
x86-64:64位操作系统
version 1 (SYSV):版本
dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2:动态链接的库
BuildID[sha1]=929170c6441faf1ed8244921a012c77550a8584a:动态ID
for GNU/Linux 3.2.0:gcc编译器的版本
not stripped:文件没有被压缩
2、cat 文件名:将文件内容输出到终端
cat -n 将文件内容输出到终端,并且显示行号
3、find 查找文件
格式:find 路径 -name 文件名
// 从路径往后查找文件
find ./ -name *.c
4、grep 查询指定字符串
grep "字符串" 文件名 // 在一个文件中查找
grep "字符串" 路径 -nR // 从路径往后查找,找到所有用这个字符串的文件
// -n:回显找到的行数
// -R:查找路径可以是目录,-R会进行递归查找
5、rm
rm -f 文件名:强制删除,文件存不存在都删除
rm -rf 目录:强制删除文件夹
6、head 文件名:默认输出文件内容的前10行
head -num 文件名:输出文件内容前num行
7、tail 文件名:默认输出文件内容的后10行
tail -num 文件名:默认输出文件内容后num行
head -30 文件名| tail -5 // 文件前30行当中的后5行
3、硬链接和软连接
3.1、硬链接
硬链接文件可以理解为文件的副本(复制粘贴)
ln // 根据 Linux 系统分类给文件的 inode(ls -li) 号进行建立的(文件的编号),没有办法跨越文件系统
格式:
ln 被链接的文件(源文件) 生成的链接文件(目标文件)
特点:
1)硬链接的属性是 - 相当于生成一个副本 起别名
2)源文件删除链接文件依然存在
3)删除源文件之后,即使创建一个和源文件同名文件,也和硬链接文件之间不存在链接关系
4)修改其中一个文件的内容,另一个也会更改(另一个文件重新打开)
5)硬链接文件和源文件有相同的inode号
3.2、软连接(符号链接)
理解为快捷方式
ln -s // 利用文件的路径来建立,最好是绝对路径
格式:
ln -s 被链接的文件(源文件) 生成链接文件(目标文件)
特点:
1)软连接文件属性 | 相当于快捷方式
2)修改内容都变化
3)软连接文件可以链接目录
4)源文件删除,链接断开,在原来位置创建就可以重新链接
5)拷贝目录的软连接可以直接拷贝,如果需要拷贝普通文件的软连接文件,需要加上 -d 保证参数可以存在链接属性 // cp -d 软连接文件(普通文件) 路径
3.3、硬链接和软连接区别
1、使用上:
两者没有区别,与正常文件访问方式一样,支持读写,可执行文件也可直接执行
2、本质上:
硬链接:本质上是同一个文件
软连接:本质上不是同一个文件
3、跨设备区别:
硬链接:不支持
软连接:支持
4、inode区别:
硬链接:相同
软连接:不同
5、连接数:
硬链接:创建新的硬链接,连接数会增加,删除硬链接,连接数会减少
软连接:创建或删除,连接数不会变化
6、文件夹:
硬链接:不支持
软连接:支持
相关文章:

Linux第二课:LinuxC高级 学习记录day02
2.4、shell中的特殊字符 2.4.4、命令置换符 或者 $() 反引号:esc下面的按键,英文状态下直接按 功能:将一个命令的输出作为另一个命令的参数 echo 不会认为hostname是一个命令 加上 之后,先执行hostname,拿到主机名…...
6. NLP自然语言处理(Natural Language Processing)
自然语言是指人类日常使用的语言,如中文、英语、法语等。 自然语言处理是人工智能(AI)领域中的一个重要分支,它结合了计算机科学、语言学和统计学的方法,通过算法对文本和语音进行分析,使计算机能够理解、解…...

win10电脑 定时关机
win10电脑 定时关机 https://weibo.com/ttarticle/p/show?id2309405110707766296723 二、使用任务计划程序设置定时关机打开任务计划程序: 按下“Win S”组合键,打开搜索框。 在搜索框中输入“任务计划程序”,然后点击搜索结果中的“任务…...
linux删除用户
1、查看账号 cat /etc/passwd 查看所有用户账号信息:该文件记录了系统中的所有用户账号信息,包括用户名、用户ID、用户所属组等。 2、删除账号 基本删除:使用userdel命令删除用户账号,格式为userdel [选项] 用户名。如果不加任…...

FPGA的 基本结构(Xilinx 公司Virtex-II 系列FPGA )
以Xilinx 公司Virtex-II 系列FPGA 为例,其基本结构由下图所示。它是主要由两大部分组成:可编程输入/输出(Programmable I/Os)部分和内部可配置(Configurable Logic)部分。 可编程输入/输出(I/Os…...
Springboot项目如何消费Kafka数据
目录 一、引入依赖二、添加Kafka配置三、创建 Kafka 消费者(一)Kafka生产的消息是JSON 字符串1、方式一2、方式二:需要直接访问消息元数据 (二)Kafka生产的消息是对象Order 四、创建 启动类五、配置 Kafka 生产者&…...
LeetCode 热题 100 | 子串
子串基础 前缀和:前面的数加在一起等于多少,放进map里,key为和,value为这个和出现的次数。单调队列:单调递增/递减队列,每次加入新元素,比新元素大/小的元素全部弹出。滑动窗口:两层…...

深度学习笔记11-优化器对比实验(Tensorflow)
🍨 本文为🔗365天深度学习训练营中的学习记录博客🍖 原作者:K同学啊 目录 一、导入数据并检查 二、配置数据集 三、数据可视化 四、构建模型 五、训练模型 六、模型对比评估 七、总结 一、导入数据并检查 import pathlib,…...
【掌握 JavaScript 数组迭代:map 和 includes 的使用技巧】
map map()方法是数组原型的一个函数,用于对数组的每个元素执行一个函数,并返回一个新的数组,其中包含么哦一个元素执行的结果。 语法 const newArray array.map(callback(currentValue, index, arr), thisValue)参数 callback࿱…...

深入浅出 Android AES 加密解密:从理论到实战
深入浅出 Android AES 加密解密:从理论到实战 在现代移动应用中,数据安全是不可忽视的一环。无论是用户隐私保护,还是敏感信息的存储与传输,加密技术都扮演着重要角色。本文将以 AES(Advanced Encryption Standard&am…...

Clickhouse基础(一)
数据存储的目录,在存储数据时是先经过压缩后再存储的,压缩效率很高 操作命令: sudo clickhouse start sudo clickhouse restart sudo clickhouse status进入clickhouse clickhouse-client -mCREATE TABLE db_13.t_assist (modelId UInt64,…...

深度学习|表示学习|一个神经元可以干什么|02
如是我闻: 如果我们只有一个神经元(即一个单一的线性或非线性函数),仍然可以完成一些简单的任务。以下是一个神经元可以实现的功能和应用: 1. 实现简单的线性分类 输入:一组特征向量 x x x 输出ÿ…...

ubuntu22.04降级安装CUDA11.3
环境:主机x64的ubuntu22.04,原有CUDA12.1,但是现在需要CUDA11.3,本篇文章介绍步骤。 一、下载CUDA11.3的run文件 下载网址:https://developer.nvidia.com/cuda-11-3-1-download-archive?target_osLinux&target_…...
为AI聊天工具添加一个知识系统 之32 三“中”全“会”:推理式的ISA(父类)和IOS(母本)以及生成式CMN (双亲委派)之1
本文要点和问题 要点 三“中”全“会”:推理式的ISA的(父类-父类源码)和IOS的(母本-母类脚本)以及生成式 CMN (双亲委派-子类实例)。 数据中台三端架构的中间端(信息系统架构ISA :…...

Python----Python高级(函数基础,形参和实参,参数传递,全局变量和局部变量,匿名函数,递归函数,eval()函数,LEGB规则)
一、函数基础 1.1、函数的用法和底层分析 函数是可重用的程序代码块。 函数的作用,不仅可以实现代码的复用,更能实现代码的一致性。一致性指的是,只要修改函数的代码,则所有调用该函数的地方都能得到体现。 在编写函数时…...
spring解决循环依赖的通俗理解
目录标题 1、什么是循环依赖2、解决循环依赖的原理3、Spring通过三级缓存解决循环依赖4、为什么要使用三级缓存而不是二级缓存?5、三级缓存中存放的是lambda表达式而不是一个半成品对象 1、什么是循环依赖 众所周知,Spring的容器中管理整个体系的bean对…...

用 Python 从零开始创建神经网络(十九):真实数据集
真实数据集 引言数据准备数据加载数据预处理数据洗牌批次(Batches)训练(Training)到目前为止的全部代码: 引言 在实践中,深度学习通常涉及庞大的数据集(通常以TB甚至更多为单位)&am…...
介绍PyTorch张量
介绍PyTorch张量 介绍PyTorch张量 PyTorch张量是我们在PyTorch中编程神经网络时将使用的数据结构。 在编程神经网络时,数据预处理通常是整个过程的第一步,数据预处理的一个目标是将原始输入数据转换为张量形式。 torch.Tensor类的实例 PyTorch张量…...

Vision Transformer (ViT)原理
Vision Transformer (ViT)原理 flyfish Transformer缺乏卷积神经网络(CNNs)的归纳偏差(inductive biases),比如平移不变性和局部受限的感受野。不变性意味着即使实体entity(即对象)的外观或位…...

移动云自研云原生数据库入围国采!
近日,中央国家机关2024年度事务型数据库软件框架协议联合征集采购项目产品名单正式公布,移动云自主研发的云原生数据库产品顺利入围。这一成就不仅彰显了移动云在数据库领域深耕多年造就的领先技术优势,更标志着国家权威评审机构对移动云在数…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...
【位运算】消失的两个数字(hard)
消失的两个数字(hard) 题⽬描述:解法(位运算):Java 算法代码:更简便代码 题⽬链接:⾯试题 17.19. 消失的两个数字 题⽬描述: 给定⼀个数组,包含从 1 到 N 所有…...

基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...
第25节 Node.js 断言测试
Node.js的assert模块主要用于编写程序的单元测试时使用,通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试,通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...

ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
代理篇12|深入理解 Vite中的Proxy接口代理配置
在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...
iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈
在日常iOS开发过程中,性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期,开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发,但背后往往隐藏着系统资源调度不当…...