Linux基础(较全)

2023-10-29

Linux

0.目录

文章目录

1.Linux简介

1.1 Linux是什么

  • Linux是一种自由和开放源码的类UNIX操作系统,1991年由林纳斯托瓦兹创建,主要受Minix和UNIX思想启发。

  • Linux遵循GNU通用公共许可证(GPL),所有人都可以自由使用源代码,也可以自由修改并重新发布

  • Linux是基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统

  • Linux能运行主要的UNIX工具软件、应用程序和网络协议,继承了UNIX以网络为核心的设计思想。

1.2 Linux发行版?

LInux发行版简单的来说就是将Linux内核和应用软件做封装

市场上主流的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等

1.3 LInux应用领域?

从嵌入式设备到超级计算机、并到服务器领域确定了地位、通常服务器使用LAMP(Linux+Apache+Mysql+PHP)和LNMP(Linux+Nginx+Mysql+PHP)组合

目前,linux不仅在家庭中,企业中使用国家层面也在使用Linux

1.4 Linux vs Windows?

比较 Windows Linux
界面 界面统一,外壳程序固定所有 Windows 程序菜单几乎一致,快捷键也几乎相同 图形界面风格依发布版不同而不同,可能互不兼容。GNU/Linux 的终端机是从 UNIX 传承下来,基本命令和操作方法也几乎一致。
驱动程序 驱动程序丰富,版本更新频繁。默认安装程序里面一般包含有该版本发布时流行的硬件驱动程序,之后所出的新硬件驱动依赖于硬件厂商提供。对于一些老硬件,如果没有了原配的驱动有时很难支持。另外,有时硬件厂商未提供所需版本的 Windows 下的驱动,也会比较头痛。 由志愿者开发,由 Linux 核心开发小组发布,很多硬件厂商基于版权考虑并未提供驱动程序,尽管多数无需手动安装,但是涉及安装则相对复杂,使得新用户面对驱动程序问题(是否存在和安装方法)会一筹莫展。但是在开源开发模式下,许多老硬件尽管在Windows下很难支持的也容易找到驱动。HP、Intel、AMD 等硬件厂商逐步不同程度支持开源驱动,问题正在得到缓解。
使用 使用比较简单,容易入门。图形化界面对没有计算机背景知识的用户使用十分有利。 图形界面使用简单,容易入门。文字界面,需要学习才能掌握。
学习 系统构造复杂、变化频繁,且知识、技能淘汰快,深入学习困难。 系统构造简单、稳定,且知识、技能传承性好,深入学习相对容易。
软件 每一种特定功能可能都需要商业软件的支持,需要购买相应的授权。 大部分软件都可以自由获取,同样功能的软件选择较少。

2.Linux(虚拟机)安装

VMware虚拟机:www.vmware.com

VMware安装linux特点:

  • 不需要分区和重启即可同一PC上两种操作系统
  • 本机和虚拟机可以网络通信
  • 可以随时修改虚拟机配置

安装步骤:

2.1 系统分区

  1. 分区表
    • MBR分区表
      • 最大2.1TB,4分区数
      • 主分区(最多四个)
      • 扩展分区(1个,不能写数据)
      • 逻辑分区
    • GPT分区表
      • 最大9.4ZB,没有限制分区数(理论)
  2. 格式化
    • 又称逻辑格式化,是指用户选定文件系统(类型:ext4)
  3. 挂载

2.2 注意事项

  • linux严格区分大小写

  • linux一切皆文件

  • linux不靠扩展名区分文件类型

  • linux所有存储设备都必须挂载后才能使用

  • Windows程序不能直接在linux中使用

  • linux文件默认使用\n换行(LF),window默认使用\r\n(CR LF),ios默认使用\r(CR)

3.常用目录结构

目录 作用
/bin 存放系统命令的目录
/sbin 存放系统命令的目录
/boot 系统启动目录
/dev 设备文件目录
/etc 配置文件目录
/home 普通用户家目录
/lib 系统调用的函数库
/mnt 挂载目录
/opt 软件安装目录
/proc 虚拟文件目录(内核、进程、外部设备状态、网络状态)
/sys 虚拟文件目录(内核相关)
/root root家目录
/tmp 临时目录
/usr 系统软件资源目录
/var 动态数据保存目录(缓存、日志、软件运行文件)

4.常用命令

命令 作用
目录操作 ls 查看目录下文件
cd 切换目录
pwd 查看当前目录
mkdir 创建目录
rmdir 删除目录
文件操作 touch 创建空文件、修改元数据
stat 查看详细信息
cat 查看文件内容
more 分屏查看文件内容
less 分行查看文件内容
head 查看文件头部
tail 查看文件尾部
ln 软连接
目录文件都可操作 rm 删除
cp 复制
mv 移动或者重命名
权限控制 chmod 修改权限
chown 修改文件所有者和所属组
chgrp 修改文件所属组
帮助命令 man 显示联机帮助手册
info 完整的帮助信息
help 查看内置命令信息
搜索命令 whereis 搜索系统命令(帮助文档位置)
which 搜索系统命令
locate 搜索普通文件
find 在目录中搜索文件
grep 显示匹配的行
|管道 管道
文本操作 awk 文本处理工具
grep 匹配 过滤
cut 截取
sed 文本处理工具
压缩、解压命令 zip 压缩
unzip 解压.zip
gzip 压缩
gunzip 解压.gz
bzip2 压缩
bunzip2 解压.bz2
tar -c 压缩
tar -x 解压.tar
tar -z .tar.gz
tar -j .tar.bz2
关机重启 sync 刷新文件系统缓冲区(数据同步)
shutdown 关机-h或重启-r
reboot 重启
halt 关机(不安全)
poweroff 关机(不安全)
init 关机或重启(不安全)
网络命令 ifconfig 配置网络接口
ping 通过ICMP网络探测
netstat 查看网络状态、查看端口
write 向指定用户发信息
wall 向所有用户发信息(包括自己)
mail 给其他用户发邮件
系统痕迹命令 w 显示正在登陆的用户信息
who 显示正在登陆的用户信息(简单)
last 查看所有登陆过的用户信息
lastlog 查看最后登陆过的用户信息
lastb 查看登陆错误信息
挂载命令 mount 挂载
umount 卸载

5.VI编辑器

vi 、vim 打开文件,进入编辑模式

三种模式:编辑模式、输入模式、末行模式(有不同叫法)

5.1 编辑模式

5.1.1 模式切换

: 进入末行模式
i、a、o 进入输入模式(前、后、下行)
I、A、O进入输入模式(行首、行尾、上行)

5.1.2 移动光标

  • 字符间
    h: 左;j: 下;k: 上;l: 右
  • 单词
    w: 移至下一个单词的词首
    e: 跳至当前或下一个单词的词尾
    b: 跳至当前或前一个单词的词首
  • 行内
    0: 绝对行首
    ^: 行首的第一个非空白字符
    $: 绝对行尾
  • 行间
    G:文章末尾
    3G:第3行
    gg:文章开头
  • 翻屏
    ctrl:f,b

5.1.3 编辑

  • 删除&替换单个字符
    x:删除光标位置字符
    3x:删除光标开始3个字符
    r:替换光标位置字符
  • 删除命令 : d
    dw,dd
  • 复制粘贴&剪切
    yw,yy
    p
    P
  • 撤销&重做
    u 撤销
    ctrl+r 重做 撤销的操作
    . 重复上一步的操作

5.1.4 退出

  • 直接退出

    ZZ:没修改退出

  • 进入末行模式退出

    wq:保存并退出

    q!:不保存退出

5.2 输入模式

  • 标准输入

  • 模式切换

    Esc进入编辑模式

5.3 末行模式

  • 模式切换

    Esc Esc 进入编辑模式

  • 退出

    :q 退出 没有动过文件
    :wq 保存并退出 动过了,不后悔
    :q! 不保存并退出 动过了,后悔了
    :w 保存
    :w! 强行保存
    :wq --> :x

  • 高级操作

    :set 设置 set nu 设置行数
    / 查找
    s/// 查找并替换

6.软件安装

软件包分为源码包和二进制包

6.1 二进制包安装

6.1.1 RPM包安装

  • 命令

    安装命令:rpm -ivh 包全名

    服务启动:service 服务名 start

    升级命令:rpm -Uvh 包全名

    卸载命令:rpm -e 包名

  • 默认安装位置

    /etc/ 配置文件

    /usr/bin/ 可执行文件

    /usr/lib/ 函数库

    /usr/share/doc/ 使用手册

    /usr/share/man/ 帮助文件

6.1.2 yum安装

  1. 安装yum
  2. 安装软件:yum -y install 软件名

6.2 源码包安装

安装步骤

  1. 下载软件包

  2. 解压缩

  3. 进入解压目录

  4. 编译前准备

    ./configure
    
  5. 编译

    make
    
  6. 编译安装

    make install
    

卸载:删除文件目录即可

7.用户管理

7.1 用户相关文件

目录 作用 说明
/etc/passwd 用户信息文件 用户名:密码:用户ID:组ID:用户说明:用户家目录:用户命令行
/etc/shadow 影子文件 用户名:加密密码:更改时间:更改间隔:有效期:到期前警告天数:过期后宽限天数:失效时间:保留
/etc/group 组信息文件 组名:组密码位:组内其他用户(组)
/etc/gshadow 组影子文件 保存组密码
/home/用户名、/root 用户家目录
/var/spool/mail/用户名 邮箱目录
/etc/skel 用户模版目录

7.2 用户管理命令

命令 作用
useradd 添加用户
passwd 设置密码
usermod 修改用户
userdel 删除用户
su 切换用户

7.3 组管理命令

命令 作用
groupadd 添加用户组
groupdel 删除用户组
gpasswd 添加删除组成员
newgrp 改变有效组

8.权限管理(缺)

9.文件系统管理

9.1 硬盘(缺)

9.2 文件系统

9.2.1 linux文件系统特性

super block(超级块):记录date block、inode的情况

date block(数据块):数据实际存储

inode(i节点):类似元数据

9.2.2 常见文件系统

常见文件系统 简介
ext linux早期文件系统
ext2 升级版(更大分区和文件)
ext3 升级版(日志功能和可靠性)
ext4 CentOS6.x默认文件系统(颠覆性)
xfs CentOS7.x默认文件系统(XFS+LVM)
swap 交换分区文件系统(暂时代替内存)
nfs 网络文件系统
iso9660 光盘标准文件系统
fat Windows的fat16
vfat Windows的fat32
NTFS Windows的NTFS
ufs SunOS和Solaris
proc 基于内存的虚拟文件系统
sysfs 基于内存的虚拟文件系统
tmpfs 基于内存的虚拟文件系统

9.3 命令

命令 作用
df 统计空间大小
du 统计文件大小
fsck 文件系统修复命令
dumpe2fs 显示磁盘状态
stat 显示文件状态
file 判断文件类型
fdisk 分区命令
parted 分区命令
parkporbe 强制重读分区文件、重新挂载所有分区(几乎不用)
mkfs 格式化(创建文件系统)
free 查看内存
swapon 增加swap分区容量

9.4 手动创建分区

9.4.1 MBR分区

fdisk /dev/sdb			#进入分区交互界面
	n					#创建分区
	p					#查看分区
	m					#帮助
	l					#显示文件系统类型
	w					#保存退出
mkfs -t ext4 /dev/sdb1	#格式化
mkdir /disk1			#创建挂点
mount /dev/sdb1 /disk1	#挂载
vi /etc/fstab			#自动挂载

#查看
mount
fdisk -l
df

#修复权限
mount -o remount,rw /

9.4.2 GPT分区

parted /dev/sdb			#进入分区交互界面
	mklabel gpt			#修改类型
	mkpart				#创建分区
	mkfs				#创建文件系统
	resize				#修改分区大小
	re					#删除分区
	print				#查看分区
#挂载……

9.4.3 swap分区

fdisk /dev/sdb			#进入分区交互界面
	mkswap /dev/sdb1	#创建swap分区
swapon name				#增加分区

9.5 磁盘配额

9.5.1 依赖

  • 内核支持磁盘配额
    • grep CONFIG_QUOTA /boot/config-2.6.32-279.e16.i686
  • 已安装quota
    • rpm -qa |grep quota

9.5.2 概念

  • 用户配额和组配额
  • 磁盘容量限制和文件个数限制
  • 软限制和硬限制
  • 宽限时间

9.5.3 配额步骤

  1. 将分区挂载到目录上

  2. 用户、用户组、目录(条件)

  3. 开启磁盘配额功能

    mount -o remount,usrquota /disk
    
    vi /etc/fstab
    
    • defaults,usrquota
      
  4. 建立配额文件(需关闭SELinux)

    quotacheck -avug
    quotacheck -avugm(跟目录)
    
  5. 设置配额

    edquota -u username(进入命令行)
    edquota -p user1 -u user2(配额复制)
    
  6. 启动关闭配额

    quotaon -avug /disk/
    quotaoff -avug /disk/
    
  7. 测试

    dd if=/dev/zero of=/disk/testfile bs=1M count=60
    
  8. 非交互式配额

    setquota -u 用户 容量软限制 容量硬限制
    

9.6 LVM逻辑卷

9.6.1 步骤

  1. 将物理硬盘分区(也可以整体分区)

    fdisk 
    
  2. 将分区建立物理卷(PV)

    pvcreate /dev/sdb
    pvscan
    pvdisplay
    pvremove
    
  3. 将物理卷整合为卷组(VG)

    vgcreate 选项 卷组名 物理卷名
    vgscan
    
  4. 把卷组划分为逻辑卷(LV)

    lvcreate 选项 卷组名
    

10.启动引导与修复

10.1 系统运行级别

查看:runlevel

改变级别:init 级别

级别:

  • 0:关机
  • 1:单用户模式
  • 2:不完全的命令行模式(无NFS)
  • 3:标准命令行模式
  • 4:系统保留
  • 5:图形模式
  • 6:重启动

永久默认启动级别设置:/etc/inittab

10.1.1 开机执行文件

文件:/etc/rc.d/rc.local

  • /var/lock/subsys/local 开机触摸

10.2 启动引导程序

10.2.1 grub引导程序

优点:更多的文件系统、查找内核文件、启动时修改启动选项、动态配置grub配置文件

10.2.2 /boot/grub目录

作用:

  • 加载系统内核
  • 选择系统的菜单
  • 调用其他引导程序,实现多系统引导

10.2.3 grub配置文件

前四行:

  • 默认启动系统:0
  • 等待选择时间:5
  • 背景文件:
  • 隐藏按钮

后每四行:可用系统

  • 标题
  • 启动目录:
  • 内核:
  • 虚拟文件系统:

10.2.4 grub加密

  1. grub-md5-crypt
  2. 将秘钥放在grub配置文件背景文件后
  3. 不能加lock

10.3 系统修复模式

10.3.1 单用户模式

修改密码:

  1. 启动时按e,选中grub配置文件内核,按e
  2. grub配置文件内核加空格1,进入系统
  3. passwd root修改密码

修改启动级别:

  • 修改/etc/inittab

10.3.2 光盘修复模式

  1. 光盘启动
  2. chroot /mnt/sysimage
  3. 修复

11.服务管理

11.1 服务分类

  • RPM包安装服务
    • 独立服务
    • 基于xinetd服务
  • 源码包安装服务

11.2 管理

11.2.1 RPM包独立服务

  • 启动

    • 使用/etc/init.d目录下启动脚本启动

      /etc/init.d/httpd start
      
    • 使用service命令启动

      service 独立服务名 start|stop|restart
      
  • 自启动

    • chkconfig命令设置

      chkconfig --level 级别 服务名  on|off
      
    • /etc/rc.d/rc.local文件配置

      vi /etc/rc.d/rc.local
      
    • ntsysv命令设置

      ntsysv --level 级别
      

11.2.2 基于xinetd服务

  • 启动

    • 配置/etc/xinetd.d/telnet
    service 独立服务名 start|stop|restart
    
  • 自启动

    • chkconfig命令设置

      chkconfig 服务名  on|off
      

11.2.3 源码包服务

  • 启动

    • 使用/usr/local/服务/bin/…启动脚本启动

      /usr/local/服务/bin/... start
      
  • 自启动

    • /etc/rc.d/rc.local文件配置

      vi /etc/rc.d/rc.local
      
  • 配置命令识别

    • service命令识别:软连接启动脚本到/etc/init.d目录下

    • chkconfig命令识别:启动脚本前加入

      #chkconfig: 运行级别 启动顺序 关闭
      #description:说明
      
      chkconfig --add 服务名
      

12.系统管理

12.1 进程管理

ps 静态查看进程
top 动态查看进程
pstree 查看进程树
kill 杀死进程
killall 杀死进程
pkill 杀死进程

12.2 工作管理

转入后台:

  • &
  • ctrl+z

后台命令:

  • jobs -l 查看
  • fg %工作号 恢复到前台
  • bg %工作号 后台暂停>后台执行

12.3 资源查看

vmstat					监控系统资源

dmesg					开机时内核检查

free					内存使用情况

/proc/cpuinfo			cpu信息

w						已经登陆用户信息

who      				已经登陆用户信息

uptime					系统启动时间和平均负载

uname					查看系统与内核信息

12.4 定时任务

at						一次性定时任务
crontab					循环定时任务
anacron					关机情况定时任务

13.日志管理(缺)

常见日志文件目录:/var/log/

13.1 rsyslogd服务

配置文件:/etc/rsyslog.conf

13.2 日志轮替

@笔记分享

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux基础(较全) 的相关文章

  • 使用 .htaccess 启用 PHP 短标签

    我在自己的 Centos 服务器上设置了 Apache 并具有多个虚拟 Web 服务器 并且我希望仅为位于以下位置的其中一个 Web 服务器启用 PHP 短标记 var www ostickets html 我可以通过添加成功启用短标签sh
  • 进程如何知道它已收到信号

    如果我错了 请纠正我 以下是我对信号的理解 据我所知 信号生成 和信号传递有2个不同 事物 为了产生信号 操作系统只是在位数组中设置一个位 在过程控制中维护 工艺块 PCB 每一位 对应于特定信号 当设置一个位时 这意味着 该位对应的信号为
  • 设置 Vim 背景颜色

    当我尝试更改背景颜色时 vimrc或者直接在 Vim 中使用以下命令 set background dark 这根本不影响我的背景 也没有light选项 不过 当我运行 gvim 时 看起来还不错 有没有办法在不更改 Konsole 设置的
  • 在 MacO 和 Linux 上安装 win32com [重复]

    这个问题在这里已经有答案了 我的问题很简单 我可以安装吗win32com蟒蛇API pywin32特别是 在非 Windows 操作系统上 我一直在Mac上尝试多个版本pip install pywin32 都失败了 下面是一个例子 如果你
  • 在Linux中使用C/C++获取机器序列号和CPU ID

    在Linux系统中如何获取机器序列号和CPU ID 示例代码受到高度赞赏 Here http lxr linux no linux v2 6 39 arch x86 include asm processor h L173Linux 内核似
  • 使用 terminfo 的终端颜色?

    我正在编写一个 C 类 允许在终端中使用颜色 我希望它适用于每个终端 在支持真彩色 24 位 的终端上打印 在支持它的终端上具有 256 色 6x6x6 其他都是基本的 16 种颜色 我曾经使用 termcap 编写过一次 C 函数 并且我
  • 我们可以在 Bash 脚本中使用 PHP 吗?

    我有一个 bash 脚本abcd sh bin sh for i in seq 8 do ssh w i uptime ps elf grep httpd wc l free m mpstat done pid sleep 1 kill 9
  • Linux Shellcode“你好,世界!”

    我有以下可用的 NASM 代码 global start section text start mov eax 0x4 mov ebx 0x1 mov ecx message mov edx 0xF int 0x80 mov eax 0x1
  • %config(noreplace) 文件上出现意外的 RPM 冲突

    我正在创建我自己的RPM using rpmbuild My RPM 包含配置文件哪个应该永远不会被覆盖 即使 RPM 包含这些配置文件的新版本 为了存档这个 我用以下标签标记了它们 config noreplace opt mypacka
  • 如何从命令行执行 PHP 代码?

    我想执行单个 PHP 语句 例如if function exists my func echo function exists 直接使用命令行 无需使用单独的 PHP 文件 这怎么可能 如果您要在命令行中执行 PHP 我建议您安装phpsh
  • _dl_runtime_resolve -- 共享对象何时加载到内存中?

    我们有一个对性能要求很高的消息处理系统 最近我们注意到第一条消息比后续消息花费的时间要长很多倍 当它通过我们的系统时 会发生大量转换和消息增强 其中大部分是通过外部库完成的 我刚刚描述了这个问题 使用 callgrind 将仅一条消息的 运
  • 有没有办法让 Linux CLI IO 重定向持久化?

    我有多个管道命令 如下所示 find options grep options xargs grep options 它们中的每一个都可能产生我不感兴趣的错误 权限错误 文件名空格错误等 因此 我想将所有错误重定向到 dev null 我知
  • 在哪里可以找到所有 C 标准库的源代码?

    我正在寻找所有 C 标准库的完整源代码 也就是说 我正在寻找 stdio h stdlib h string h math h 等的源代码 我想看看它们是如何创建的 我认为这取决于不同的平台 但 Linux 或 Windows 都会受到欢迎
  • 我如何知道用户在使用 ncurses (Linux) 的控制台中按下了 ESC 键?

    I have a problem in detecting whether I just got a plain ESC key just code 27 or whether it was another special key such
  • /usr/bin/as:无法识别的选项“-EL”

    因此 在为我的1plus手机编译android内核时 经过3天的多次尝试 我放弃了并尝试在这里询问是否有人以前遇到过这个问题 这个错误对我来说有点模糊 但我觉得问题来自于我最近对 GNU Linux 发行版 Gentoo 的更改 它在不应该
  • Docker 容器可以访问 DNS,但无法解析主机

    我在运行 docker 容器时遇到一个有趣的问题 突然间 我无法从容器内解析 DNS 这是一个概要 一切都没有解决 apt get pip 一次性 ping 容器等正在运行docker run it dns 8 8 8 8 ubuntu p
  • Tk 初始化失败:无显示名称且无 $DISPLAY 环境变量

    我试图从 Ubuntu 终端调用 Centos 服务器上的工具 我收到以下错误 Tk 初始化失败 没有显示名称 也没有 DISPLAY 环境变量 请帮我解决这个问题 提前致谢 连接到你的 CentOS 机器ssh Y其中 每man ssh
  • 有没有办法改变vim的默认模式

    有谁知道如何更改vim的默认模式 它的默认模式是命令模式 但是我可以将其更改为插入模式吗 只需将以下行添加到您的 vimrc 中 start Vim s default mode will be changed to Insert mode
  • 在 4.x 内核上的 64 位内存中查找系统调用表

    我正在尝试编写一个简单的内核模块来查找 Linux 中的 sys call table 但遇到了一些麻烦 我在这里找到了 32 位 Linux 的基本指南 https memset wordpress com 2011 03 18 sysc
  • 检查 Linux 中给定进程的打开 FD 限制

    我最近有一个 Linux 进程 泄露 了文件描述符 它打开了文件描述符 但没有正确关闭其中一些文件描述符 如果我对此进行监控 我就可以提前得知该过程已达到其极限 有没有一种很好的 Bash 或 Python 方法来检查 Ubuntu Lin

随机推荐

  • 企业如何通过CRM系统做好客户管理?

    每一位客户对于企业都是非常宝贵的资源 也是企业赖以生存和发展的基础 做好客户管理和关系维护是企业必备的一种能力 如今 随着信息化的发展 很多企业为了更好的管理客户引进了CRM系统 CRM系统可以帮助企业建立 以客户为中心 的管理方式 将市场
  • 奥特曼系列赛文飞踢是哪个服务器,盘点奥特兄弟最强飞踢技,第一名实至名归你能猜到吗?...

    奥特曼系列较之拳头威力 飞踢这种技能的对比更为奥迷津津乐道 其中最具代表性的无疑是 雷欧飞踢 毕竟有数次杀敌纪录 而提起飞踢的威力对比 雷欧飞踢则不见得一定能傲视群雄 平成系暂且不论 在奥特兄弟中 也不乏能与雷欧飞踢分庭抗礼的飞踢技 力 解
  • 创建数据库(脚本实现)

    创建历史数据库 if object id dbo spr create his db is not null drop procedure dbo spr create his db go create proc dbo spr creat
  • matlab 正弦波 fft,【求助】正弦信号序列fft频谱分析!!!

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 就是正弦包含频率是20hz 20 5hz 40hz 采样频率fs是100hz 分析栅栏效应 先是128个点fft 补零到512个点进行fft 再512个点fft 程序是这样的 N1 128 N2
  • innoDB数据收集方式—永久性&非永久性(四十三)

    上篇文章说了连接查询的成本 主要由驱动表的扇出值和被驱动表的查询方法决定 而成本这些都是可以在 cost 表查看的 因为分为server和engine表 server不管理数据成本 里面包含连接管理 查询缓存 sql解码 sql优化 eng
  • 动态类型语言和静态类型语言的区别

    一 概念 动态类型语言 动态类型语言是指在运行期间才去做数据类型检查的语言 也就是说 在用动态类型的语言编程时 永远也不用给任何变量指定数据类型 变量使用之前不需要类型声明 该语言会在你第一次赋值给变量时 在内部将数据类型记录下来 Pyth
  • MySQL · myrocks · 相关tools介绍

    概述 MyRocks提供了丰富的tools 如sst dump mysql ldb等 这些工具对我们的运维和分析问题非常有用 sst dump 可以导出sst中的数据和属性信息 sst dump help sst dump file
  • c# cst_CST407教学大纲-通过.NET学习C#

    c cst OREGON INSTITUTE OF TECHNOLOGY 俄勒冈理工学院 Software Engineering Technology 软件工程技术 CST 407 Seminar C and the NET Framew
  • unity3D实现多点触碰

    实现多点触碰是利用input这个类里面的方法实现的 从edit project settings input就可以看到input能够得到的轴 想要读取轴向可以使用Input GetAxis方法获取下列默认轴 Horizontal 和 Ver
  • 神秘又熟悉的main函数

    目录 1 概述 2 程序编译 3 揭开最后的面纱 1 概述 学习C语言的同学都知道main函数 并且这是我们接触的第一个函数 但是很少有人去深究C语言为什么都是从main函数执行的 今天我们就来深入了解下 2 程序编译 C语言生成可执行文件
  • HTML5语义元素

    目录 什么是语义元素 浏览器支持 HTML5 中新的语义元素 HTML5 语义元素 HTML5元素 实例 HTML5元素 实例 嵌套语义元素 HTML5元素 实例 HTML5元素 实例 HTML5元素 实例 HTML5元素 实例 HTML5
  • 凸优化第三章凸函数 3.1基本性质和例子

    3 1基本性质和例子 定义 扩展值延伸 一阶条件 二阶条件 例子 下水平集 上境图 Jensen不等式及其扩展 不等式 定义 函数f是凸函数 当f的定义域S是凸集 且 严格凸函数 从几何上来看 如下图 函数f上的任意两点之间的弦都在函数图像
  • 解决本地浏览器运行项目时的跨域问题Access to XMLHttpRequest at ‘file:///C:/Users/Len/Desktop/%E5%8F%AF%E4%BF%AE%E6%94%

    解决本地浏览器运行项目时的跨域问题 Access to XMLHttpRequest at file C Users Len Desktop E5 8F AF E4 BF AE E6 94 B9 E9 85 8D E7 BD AE dist
  • leetcode 路径总和 -- 递归

    0 题目描述 leetcode原题链接 112 路径总和 1 递归解法 假定从根节点到当前节点的值之和为 val 我们可以将这个大问题转化为一个小问题 是否存在从当前节点的子节点到叶子的路径 满足其路径和为 sum val 不难发现这满足递
  • 【OpenCV】噪声的添加和过滤

    1 简介 下面简单介绍两种图像噪声 即椒盐噪声和高斯噪声 1 椒盐噪声 椒盐噪声也称脉冲噪声 它是一种随机出现的白点或者黑点 可能是亮的区域有黑色像素或是在暗的区域有白色像素 或是两者皆有 图像模拟添加椒盐噪声是通过 随机获取像素点 并设置
  • Android 12上全新的应用启动API,适配一下?

    今日科技快讯 近日 谷歌宣布 将在欧洲市场上销售的Android手机中免费添加更多移动搜索应用 欧洲Android用户可以通过全新的 搜索引擎选项 来选择并设置自己设备上的默认搜索引擎 作者简介 本篇文章来自TechMerger同学的投稿
  • mysql动态ip域名连接_用本地动态IP连接本地mysql

    一个问题已经困扰了我很久的问题今天终于解决了 在用C 连接mysql时 用本地的动态IP加端口号连接本地的数据库mysql real connect conn 192 168 223 128 root mysql Project 3306
  • PCA的数学原理(非常值得阅读)!!!!

    PCA Principal Component Analysis 是一种常用的数据分析方法 PCA通过线性变换将原始数据变换为一组各维度线性无关的表示 可用于提取数据的主要特征分量 常用于高维数据的降维 网上关于PCA的文章有很多 但是大多
  • 统计字符串内某个字符出现的次数

    假如有一个字符串 cabcdasgcjaieyakxhanzgajgaa 我们要统计这个字符串里字符 a 出现的位置以及出现的次数 大致思路 先利用 indexOf 判断出该字符第一次出现的位置 只要其返回结果不等于 1 就继续往后查找 但
  • Linux基础(较全)

    Linux 0 目录 文章目录 Linux 0 目录 1 Linux简介 1 1 Linux是什么 1 2 Linux发行版 1 3 LInux应用领域 1 4 Linux vs Windows 2 Linux 虚拟机 安装 2 1 系统分