当前位置: 首页 > news >正文

Debian常用命令

以下是完整的 Linux 命令大全,适用于 Debian、Ubuntu 及其衍生系统,涵盖系统管理、文件操作、磁盘管理、用户管理、网络调试、安全、进程管理等多个方面。


目录

  1. 基本命令
  2. 关机与重启
  3. 文件和目录管理
  4. 文件搜索
  5. 挂载文件系统
  6. 磁盘空间管理
  7. 用户和群组管理
  8. 文件和目录权限
  9. 文件的特殊属性
  10. 打包和压缩文件
  11. DEB 包管理
  12. 查看文件内容
  13. 文本处理
  14. 字符设置和文件格式转换
  15. 文件系统分析
  16. 初始化文件系统
  17. SWAP 文件系统
  18. 备份与恢复
  19. 光盘操作
  20. 网络管理与调试
  21. 系统监控与性能
  22. 进程管理
  23. 硬件管理
  24. 安全与权限
  25. 日志管理
  26. VIM 编辑器
  27. 进阶工具
  28. 附录:常用快捷命令
  29. 总结

1. 基本命令

  • uname -m:显示机器的处理器架构
  • uname -r:显示正在使用的内核版本
  • dmidecode -q:显示硬件系统部件 (SMBIOS / DMI)
  • hdparm -i /dev/hda:列出磁盘的架构特性
  • hdparm -tT /dev/sda:在磁盘上执行测试性读取操作
  • arch:显示机器的处理器架构
  • cat /proc/cpuinfo:显示 CPU 信息
  • cat /proc/interrupts:显示中断
  • cat /proc/meminfo:检查内存使用
  • cat /proc/swaps:显示哪些 swap 被使用
  • cat /proc/version:显示内核的版本
  • cat /proc/net/dev:显示网络适配器及统计
  • cat /proc/mounts:显示已加载的文件系统
  • lspci -tv:列出 PCI 设备
  • lsusb -tv:显示 USB 设备
  • date:显示系统日期
  • cal 2007:显示 2007 年的日历表
  • date 041217002007.00:设置日期和时间(格式:月日时分年.秒)
  • clock -w:将时间修改保存到 BIOS

2. 关机与重启

  • shutdown -h now:立即关闭系统
  • init 0telinit 0:关闭系统
  • shutdown -h hh:mm &:按预定时间关闭系统
  • shutdown -c:取消按预定时间关闭系统
  • shutdown -r now:立即重启系统
  • reboot:重启系统
  • logout:注销当前用户

3. 文件和目录管理

导航
  • cd /home:进入 /home 目录
  • cd ..:返回上一级目录
  • cd ../..:返回上两级目录
  • cdcd ~:进入个人的主目录
  • cd ~user1:进入指定用户 user1 的主目录
  • cd -:返回上次所在的目录
  • pwd:显示当前工作路径
查看目录
  • ls:列出当前目录文件(不包括隐藏文件)
  • ls -a:列出当前目录文件(包括隐藏文件)
  • ls -F:列出当前目录文件,并附加文件类型标志
  • ls -l:显示文件和目录的详细资料
  • ls *[0-9]*:显示包含数字的文件名和目录名
  • tree:显示目录树(需安装 tree 工具)
创建与删除
  • mkdir dir1:创建目录 dir1
  • mkdir dir1 dir2:同时创建多个目录
  • mkdir -p /tmp/dir1/dir2:创建一个目录树
  • rm -f file1:强制删除文件 file1
  • rmdir dir1:删除空目录 dir1
  • rm -rf dir1:删除目录 dir1 及其内容
复制与移动
  • mv dir1 new_dir:重命名或移动目录
  • mv 路径/文件 /路径/文件:移动文件到指定路径
  • mv file1 file2:在当前目录下重命名文件
  • cp file1 file2:复制文件
  • cp -a /tmp/dir1 .:复制目录到当前工作目录
  • cp -r source_dir destination_dir:递归复制目录
链接
  • ln -s file1 lnk1:创建指向文件或目录的软链接
  • ln file1 lnk1:创建物理链接
时间戳与类型
  • touch -t 0712250000 file1:修改文件的时间戳
  • file file1:输出文件的 MIME 类型
编码转换
  • iconv -l:列出已知的编码
  • iconv -f fromEncoding -t toEncoding inputFile > outputFile:转换文件编码
  • iconv -f gbk -t utf8 $i > newfile:转换文件内容由 GBK 到 UTF8
批量操作
  • find . -maxdepth 1 -name "*.jpg" -print -exec convert "{}" -resize 80x60 "thumbs/{}" \;:批量调整文件大小(需安装 ImageMagick)

4. 文件搜索

  • find / -name file1:从根目录开始搜索文件
  • find / -user user1:搜索属于用户 user1 的文件和目录
  • find /home/user1 -name "*.bin":在 /home/user1 目录中搜索 .bin 文件
  • find /usr/bin -type f -atime +100:搜索过去 100 天内未被使用过的文件
  • find /usr/bin -type f -mtime -10:搜索 10 天内被创建或修改的文件
  • find / -name "*.rpm" -exec chmod 755 '{}' \;:搜索 .rpm 文件并更改权限
  • find / -xdev -name "*.rpm":搜索 .rpm 文件,忽略可移动设备
  • locate "*.ps":使用 locate 工具搜索 .ps 文件(需先运行 updatedb
  • whereis halt:显示 halt 的位置
  • which halt:显示 halt 命令的路径

5. 挂载文件系统

  • mount /dev/hda2 /mnt/hda2:挂载 /dev/hda2/mnt/hda2
  • umount /dev/hda2:卸载 /dev/hda2
  • fuser -km /mnt/hda2:强制卸载磁盘(设备繁忙时)
  • mount /dev/fd0 /mnt/floppy:挂载软盘
  • mount /dev/cdrom /mnt/cdrom:挂载 CD/DVD
  • mount /dev/hdc /mnt/cdrecorder:挂载 CDRW/DVD
  • mount /dev/hdb /mnt/cdrecorder:挂载 CDRW/DVD
  • mount -o loop file.iso /mnt/cdrom:挂载 ISO 镜像文件
  • mount -t vfat /dev/hda5 /mnt/hda5:挂载 Windows FAT32 文件系统
  • mount /dev/sda1 /mnt/usbdisk:挂载 USB 闪存设备
  • mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share:挂载 Windows 网络共享

6. 磁盘空间管理

  • df -h:显示已挂载的分区列表
  • ls -lSr | more:按尺寸大小排列文件和目录
  • du -sh dir1:估算目录 dir1 的磁盘使用情况
  • du -sk * | sort -rn:按磁盘使用大小排序显示文件和目录
  • dpkg-query -W -f='${Installed-Size}\t${Package}\n' | sort -k1,1n:显示已安装的 DEB 包的大小
  • free -h:查看内存和交换空间使用情况

7. 用户和群组管理

  • groupadd group_name:创建一个新用户组
  • groupdel group_name:删除一个用户组
  • groupmod -n new_group_name old_group_name:重命名一个用户组
  • useradd -c "Name Surname" -g admin -d /home/user1 -s /bin/bash user1:创建属于 admin 用户组的用户
  • useradd user1:创建一个新用户
  • userdel -r user1:删除用户及其主目录
  • usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1:修改用户属性
  • passwd user1:修改用户的口令(需 root 权限)
  • chage -E 2005-12-31 user1:设置用户口令的失效期限
  • pwck:检查 /etc/passwd 的文件格式和语法
  • grpck:检查群组文件格式和语法
  • newgrp group_name:切换至新群组

8. 文件和目录权限

  • ls -lh:显示文件权限
  • chmod ugo+rwx directory1:设置所有用户的读、写、执行权限
  • chmod go-rwx directory1:删除群组和其他用户的所有权限
  • chown user1 file1:改变文件所有者
  • chown -R user1 directory1:递归改变目录及其内容的所有者
  • chgrp group1 file1:改变文件的群组
  • chown user1:group1 file1:改变文件的所有者和群组
  • find / -perm -u+s:列出所有使用了 SUID 位控制的文件
  • chmod u+s /bin/file1:设置文件的 SUID 位
  • chmod u-s /bin/file1:禁用文件的 SUID 位
  • chmod g+s /home/public:设置目录的 SGID 位
  • chmod g-s /home/public:禁用目录的 SGID 位
  • chmod o+t /home/public:设置文件的 Sticky 位
  • chmod o-t /home/public:禁用文件的 Sticky 位
添加或删除执行权限
  • chmod +x 文件路径:为所有用户添加执行权限
  • chmod -x 文件路径:删除所有用户的执行权限
  • chmod u+x 文件路径:为所有者添加执行权限
  • chmod g+x 文件路径:为群组添加执行权限
  • chmod o+x 文件路径:为其他用户添加执行权限
  • chmod ug+x 文件路径:为所有者和群组添加执行权限
  • chmod =wx 文件路径:为所有用户添加写、执行权限,取消读权限
  • chmod ug=wx 文件路径:为所有者和群组添加写、执行权限,取消读权限

9. 文件的特殊属性

  • 使用 “+” 设置属性,使用 “-” 取消属性:
    • chattr +a file1:只允许以追加方式读写文件
    • chattr +c file1:允许文件被内核自动压缩/解压
    • chattr +d file1:在文件系统备份时忽略该文件
    • chattr +i file1:设置文件为不可变,不能删除、修改或重命名
    • chattr +s file1:允许文件被安全删除
    • chattr +S file1:写操作立即写入磁盘
    • chattr +u file1:允许删除后恢复文件
  • lsattr:显示文件的特殊属性

10. 打包和压缩文件

解压缩
  • bunzip2 file1.bz2:解压 .bz2 文件
  • gunzip file1.gz:解压 .gz 文件
  • unzip file1.zip:解压 .zip 文件
  • tar -zxvf xxx.tar.gz:解压缩 .tar.gz 文件
  • tar -jxvf xxx.tar.bz2:解压缩 .tar.bz2 文件
  • unrar x aaaa.rar:解压 RAR 文件(需安装 unrar
压缩
  • bzip2 file1:压缩文件为 .bz2 格式
  • gzip file1:压缩文件为 .gz 格式
  • gzip -9 file1:以最高压缩率压缩文件
  • rar a file1.rar test_file:创建 .rar 压缩包
  • rar a file1.rar file1 file2 dir1:同时压缩多个文件和目录
打包
  • tar -cvf archive.tar file1:创建 .tar
  • tar -cvf archive.tar file1 file2 dir1:创建包含多个文件和目录的 .tar
  • tar -cvfj archive.tar.bz2 dir1:创建 .tar.bz2 格式的压缩包
  • tar -cvfz archive.tar.gz dir1:创建 .tar.gz 格式的压缩包
  • zip -r file1.zip file1 file2 dir1:递归压缩多个文件和目录
  • zip file1.zip file1:创建 .zip 压缩包
查看与解压
  • tar -tf archive.tar:查看 .tar 包内容
  • tar -xvf archive.tar:解压 .tar
  • tar -xvfj archive.tar.bz2:解压 .tar.bz2
  • tar -xvfz archive.tar.gz:解压 .tar.gz
  • unzip file1.zip:解压 .zip 文件
其他
  • tar -cPzf backup.tar.gz /path/to/directory:创建带绝对路径的压缩包
  • tar -C /path/to/extract -xzf backup.tar.gz:在指定目录解压压缩包

11. DEB 包管理

dpkg 命令
  • dpkg -i package.deb:安装或更新 DEB 包
  • dpkg -r package_name:从系统删除 DEB 包
  • dpkg -l:列出系统中所有已安装的 DEB 包
  • dpkg -l | grep httpd:列出名称包含 “httpd” 的 DEB 包
  • dpkg -s package_name:获取已安装包的详细信息
  • dpkg -L package_name:列出已安装包提供的文件
  • dpkg --contents package.deb:列出未安装包提供的文件
  • dpkg -S /bin/ping:查找文件所属的 DEB 包
APT 工具
  • apt-get install package_name:安装 DEB 包
  • apt-cdrom install package_name:从光盘安装 DEB 包
  • apt-get update:更新软件包列表
  • apt-get upgrade:升级所有已安装的软件包
  • apt-get remove package_name:删除 DEB 包
  • apt-get purge package_name:删除 DEB 包,包括配置文件
  • apt-get autoremove:删除系统不再使用的孤立软件
  • apt-get clean:清理下载的包缓存
  • apt-get autoclean:清理无用的软件包
  • apt-get check:检查依赖关系
  • apt-cache search searched-package:搜索软件包
  • apt-cache show package:获取包的相关信息,如说明、大小、版本等
  • apt-cache depends package:了解包的依赖
  • apt-cache rdepends package:查看该包被哪些包依赖
  • apt-get build-dep package:安装相关的编译环境
  • apt-get source package:下载该包的源代码
其他 APT 命令
  • dpkg --get-selections | grep -v deinstall > ~/somefile:备份当前系统安装的所有包的列表
  • dpkg --set-selections < ~/somefile && sudo dselect:从备份的安装包列表文件恢复所有包
  • apt-get -qq --print-uris install ssh | cut -d\' -f2:查看包在服务器上的地址
  • apt-cdrom add:增加一个光盘源

12. 查看文件内容

  • cat file1:查看文件内容
  • tac file1:反向查看文件内容
  • more file1:分页显示文件内容(只能向下翻页)
  • less file1:分页查看文件内容(支持上下翻页)
  • head -2 file1:查看文件的前两行
  • tail -2 file1:查看文件的最后两行
  • tail -f /var/log/messages:实时查看文件内容(适用于日志文件)
  • od -c file1:以八进制显示文件内容
  • strings file1:输出文件中的字符串内容

13. 文本处理

管道与重定向
  • cat file1 | command > result.txt:将命令输出写入新文件
  • cat file1 | command >> result.txt:将命令输出追加到已有文件
搜索与替换
  • grep Aug /var/log/messages:搜索包含 “Aug” 的行
  • grep ^Aug /var/log/messages:搜索以 “Aug” 开头的行
  • grep [0-9] /var/log/messages:搜索包含数字的行
  • grep Aug -R /var/log/*:递归搜索包含 “Aug” 的行
  • sed 's/stringa1/stringa2/g' example.txt:替换 “stringa1” 为 “stringa2”
  • sed '/^$/d' example.txt:删除所有空白行
  • sed '/ *#/d; /^$/d' example.txt:删除所有注释和空白行
字符转换
  • echo 'esempio' | tr '[:lower:]' '[:upper:]':将小写转换为大写
行处理
  • sed -e '1d' result.txt:删除第一行
  • sed -n '/stringa1/p' example.txt:只显示包含 “stringa1” 的行
  • sed -e 's/ *$//' example.txt:删除每行末尾的空白字符
  • sed -e 's/stringa1//g' example.txt:删除 “stringa1”
  • sed -n '1,5p;5q' example.txt:显示前五行
  • sed -n '5p;5q' example.txt:显示第五行
  • sed -e 's/00*/0/g' example.txt:将多个零替换为单个零
列与合并
  • cat -n file1:显示文件行号
  • awk 'NR%2==1' example.txt:显示所有奇数行
  • echo a b c | awk '{print $1}':显示第一列
  • echo a b c | awk '{print $1,$3}':显示第一和第三列
  • paste file1 file2:合并两个文件的内容
  • paste -d '+' file1 file2:以 “+” 分隔合并两个文件的内容
排序与唯一
  • sort file1 file2:排序两个文件的内容
  • sort file1 file2 | uniq:去重后显示并集
  • sort file1 file2 | uniq -u:删除交集,显示唯一行
  • sort file1 file2 | uniq -d:显示交集
  • comm -1 file1 file2:比较两个文件,删除 file1 独有的部分
  • comm -2 file1 file2:比较两个文件,删除 file2 独有的部分
  • comm -3 file1 file2:比较两个文件,删除共有的部分

14. 字符设置和文件格式转换

  • dos2unix filedos.txt fileunix.txt:将文件从 DOS 格式转换为 UNIX 格式
  • unix2dos fileunix.txt filedos.txt:将文件从 UNIX 格式转换为 DOS 格式
  • recode ..HTML < page.txt > page.html:将文本文件转换为 HTML
  • recode -l | more:显示所有支持的转换格式
  • iconv -f gbk -t utf8 $i > newfile:转换文件内容由 GBK 到 UTF8

15. 文件系统分析

  • badblocks -v /dev/hda1:检查磁盘 /dev/hda1 上的坏块
  • fsck /dev/hda1:检查并修复文件系统
  • fsck.ext2 /dev/hda1:检查 Ext2 文件系统
  • e2fsck /dev/hda1:检查 Ext2 文件系统
  • e2fsck -j /dev/hda1:检查 Ext3 文件系统
  • fsck.ext3 /dev/hda1:检查 Ext3 文件系统
  • fsck.vfat /dev/hda1:检查 FAT 文件系统
  • fsck.msdos /dev/hda1:检查 MSDOS 文件系统
  • dosfsck /dev/hda1:检查 DOS 文件系统

16. 初始化文件系统

  • mkfs /dev/hda1:在分区 /dev/hda1 创建文件系统
  • mke2fs /dev/hda1:创建 Ext2 文件系统
  • mke2fs -j /dev/hda1:创建 Ext3 文件系统
  • mkfs -t vfat /dev/hda1:创建 FAT32 文件系统
  • fdformat -n /dev/fd0:格式化软盘
  • mkswap /dev/hda3:创建 swap 文件系统

17. SWAP 文件系统

  • mkswap /dev/hda3:创建 swap 文件系统
  • swapon /dev/hda3:启用 swap
  • swapon /dev/hda2 /dev/hdb3:同时启用多个 swap 分区
  • swapoff /dev/hda3:禁用 swap

18. 备份与恢复

使用 dumprestore
  • dump -0aj -f /tmp/home0.bak /home:制作 /home 目录的完整备份
  • dump -1aj -f /tmp/home0.bak /home:制作 /home 目录的交互式备份
  • restore -if /tmp/home0.bak:还原交互式备份
使用 rsync
  • rsync -rogpav --delete /home /tmp:同步两个目录
  • rsync -rogpav -e ssh --delete /home user@ip_address:/tmp:通过 SSH 同步
  • rsync -az -e ssh --delete user@ip_addr:/home/public /home/local:通过 SSH 和压缩同步远程目录到本地
  • rsync -az -e ssh --delete /home/local user@ip_addr:/home/public:通过 SSH 和压缩同步本地目录到远程
使用 dd
  • dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz':通过 SSH 备份本地磁盘到远程主机
  • dd if=/dev/sda of=/tmp/file1:备份磁盘内容到文件
  • dd if=/dev/hda of=/dev/fd0 bs=512 count=1:复制 MBR 到软盘
  • dd if=/dev/fd0 of=/dev/hda bs=512 count=1:从软盘恢复 MBR
使用 tar
  • tar -Puf backup.tar /home/user:交互式备份
  • (cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p':通过 SSH 复制目录内容
  • tar cf - . | (cd /tmp/backup ; tar xf - ):本地复制目录,保留权限及链接
  • tar -cvf backup.tar /path/to/directory:创建备份包
  • tar -xvf backup.tar -C /path/to/extract:解压备份包
  • tar -cvf archive.tar file1 file2 dir1:创建包含多个文件和目录的 .tar
  • tar -cvfj archive.tar.bz2 dir1:创建 .tar.bz2 格式的压缩包
  • tar -cvfz archive.tar.gz dir1:创建 .tar.gz 格式的压缩包
  • tar -xvfj archive.tar.bz2:解压 .tar.bz2
  • tar -xvfz archive.tar.gz:解压 .tar.gz
  • tar -tf archive.tar:查看 .tar 包内容
  • tar -xvf archive.tar:解压 .tar
使用 find
  • find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents:查找并复制 .txt 文件
  • find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2:查找并打包 .log 文件

19. 光盘操作

  • cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force:清空可复写光盘
  • mkisofs /dev/cdrom > cd.iso:创建光盘 ISO 镜像
  • mkisofs /dev/cdrom | gzip > cd_iso.gz:创建并压缩光盘 ISO 镜像
  • mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd:创建带标签的 ISO 镜像
  • cdrecord -v dev=/dev/cdrom cd.iso:刻录 ISO 镜像
  • gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom -:解压并刻录 ISO 镜像
  • mount -o loop cd.iso /mnt/iso:挂载 ISO 镜像
  • cd-paranoia -B:转录 CD 音轨到 WAV 文件(需安装 cdparanoia
  • cd-paranoia -- "-3":转录指定音轨
  • cdrecord --scanbus:扫描 SCSI 总线
  • dd if=/dev/hdc | md5sum:校验设备的 MD5 值

20. 网络管理与调试

网络接口
  • ifconfig eth0:显示以太网卡配置
  • ifup eth0:启用网络接口
  • ifdown eth0:禁用网络接口
  • ifconfig eth0 192.168.1.1 netmask 255.255.255.0:配置 IP 地址和子网掩码
  • ifconfig eth0 promisc:设置混杂模式
  • dhclient eth0:通过 DHCP 获取 IP
  • ip link show:显示所有网络接口状态
  • mii-tool eth0:显示网络接口 eth0 状态
  • ethtool eth0:查看和修改网络接口 eth0 设置
路由
  • route -n:显示路由表
  • route add -net 0.0.0.0/0 gw IP_Gateway:配置默认网关
  • route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1:配置静态路由
  • route del default gw IP_gateway:删除默认网关
  • netstat -rn:查看路由信息
主机与 DNS
  • hostname:显示系统主机名
  • host www.example.com:查询主机名与 IP
  • nslookup www.example.com:查询 DNS 信息
  • dig www.example.com:查询 DNS 记录
  • whois www.example.com:查询 Whois 数据库
网络工具
  • ping www.example.com:检测主机连通性
  • traceroute www.example.com:跟踪路由路径
  • curl http://www.example.com:发送 HTTP 请求
  • wget http://www.example.com/file:下载文件
  • tcpdump tcp port 80:抓取 HTTP 流量
  • iwlist scan:扫描无线网络
  • iwconfig eth1:显示无线网络接口配置
  • netcat (nc):网络连接调试工具
  • mtr:结合了 pingtraceroute 的网络诊断工具(需安装 mtr
  • wireshark:网络协议分析工具(需安装 wireshark
  • ss -tuln:查看 socket 状态
  • lsof -i:列出打开的网络连接
  • arping IP地址:根据 IP 查网卡地址
  • ifconfig eth0 | awk '/inet/ {split($2,x,":");print x[2]}':查看当前 IP 地址
  • w3m -no-cookie -dump www.edu.cn | grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}':查看当前外网的 IP 地址
NAT 设置
  • sudo echo 1 > /proc/sys/net/ipv4/ip_forward:立即让网络支持 NAT
  • sudo iptables -t nat -I POSTROUTING -j MASQUERADE:配置 NAT
路由信息
  • netstat -rnroute -n:查看路由信息
  • sudo route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1:手工增加一条路由
  • sudo route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1:手工删除一条路由
修改网卡 MAC 地址
  • sudo ifconfig eth0 down:关闭网卡
  • sudo ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE:修改 MAC 地址
  • sudo ifconfig eth0 up:启动网卡
统计 IP 连接
  • 统计当前 IP 连接的个数:
    • netstat -na | grep ESTABLISHED | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -r -n
    • netstat -na | grep SYN | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -r -n
  • 统计当前 20000 个 IP 包中大于 100 个 IP 包的 IP 地址:
    • tcpdump -tnn -c 20000 -i eth0 | awk -F "." '{print $1"."$2"."$3"."$4}' | sort | uniq -c | sort -nr | awk '$1 > 100'
屏蔽 IPV6
  • echo "blacklist ipv6" | sudo tee /etc/modprobe.d/blacklist-ipv6

21. 系统监控与性能

  • top:实时显示系统任务管理器,包括 CPU、内存使用情况
  • htop:增强版 top,提供更友好的界面和更多功能(需安装 htop
  • uptime:显示系统运行时间和负载
  • dmesg:查看系统启动信息及内核日志
  • vmstat:查看内存、交换区、IO、CPU 等统计信息
  • free -h:查看内存和交换空间使用情况
  • ps aux:列出所有运行的进程
  • iostat:显示 CPU 使用率和磁盘 I/O 使用情况(需安装 sysstat
  • mpstat:显示多核 CPU 使用情况(需安装 sysstat
  • nmon:性能监控工具,支持实时监控(需安装 nmon
  • watch -n 1 'df -h':每秒刷新一次显示磁盘使用情况
  • sar:系统活动报告,提供详细的 CPU、内存、磁盘等历史信息(需安装 sysstat
  • glances:跨平台的系统监控工具(需安装 glances
  • nmon:全面的性能监控工具(需安装 nmon

22. 进程管理

  • kill <pid>:通过进程 ID 终止进程
  • killall <process_name>:通过进程名称终止进程
  • pkill <process_name>:使用更多匹配规则终止进程
  • nohup command &:后台运行命令,即使关闭终端仍运行
  • bg:将挂起的进程放到后台
  • fg:将后台进程放到前台
  • jobs:列出当前终端的所有作业
  • time command:显示命令的执行时间
  • nice:调整进程优先级
  • renice -n 10 -p 1234:修改进程 1234 的优先级为 10
  • sleep <seconds>:暂停程序执行指定秒数
  • ps -A:查看当前有哪些进程
  • kill -9 <pid>killall -9 <process_name>:强制杀死一个进程
  • xkill:图形方式中止一个程序,出现骷髅标志的鼠标,点击需要中止的程序即可

23. 硬件管理

  • lshw:列出系统硬件(需 root 权限)
  • lsblk:显示磁盘分区信息
  • lsusb:列出所有 USB 设备
  • lspci:列出所有 PCI 设备
  • inxi -Fx:显示系统信息(需安装 inxi
  • hdparm -tT /dev/sda:测试硬盘性能
  • smartctl -a /dev/sda:查看硬盘健康状况(需安装 smartmontools
  • sensors:查看硬件传感器信息(需安装 lm-sensors
  • lsmod:查看内核加载的模块

24. 安全与权限

  • chmod:更改文件或目录的权限
  • chown:更改文件或目录的所有者
  • chgrp:更改文件或目录的所属组
  • sudo:以超级用户权限运行命令
  • visudo:编辑 sudo 配置文件
  • setfacl:设置文件的 ACL(访问控制列表)
  • getfacl:查看文件的 ACL 设置
  • ufw:简化的防火墙管理工具
  • iptables:配置 Linux 内核防火墙
  • firewalld:使用 firewalld 管理防火墙规则(推荐替代 iptables
  • chattr:更改文件的特殊属性
  • setenforce:设置 SELinux 模式(需安装并配置 SELinux)
  • selinuxenabled:检查 SELinux 是否启用

25. 日志管理

  • journalctl:查看系统日志(适用于 systemd 系统)
  • dmesg:查看内核和系统启动日志
  • tail -f /var/log/syslog:实时查看系统日志文件
  • grep:结合管道过滤日志内容
  • less /var/log/syslog:分页查看日志文件
  • cat /var/log/auth.log:查看认证相关日志
  • logrotate:管理日志文件的轮转

26. VIM 编辑器

启动与退出
  • vim 文件路径:启动 Vim 编辑器
  • :q:退出 Vim 编辑器
  • :wq:保存并退出 Vim
  • :x:保存并退出 Vim
  • :q!:强制退出,不保存
  • :w:保存修改
  • :set number:显示行号
  • :set nonumber:隐藏行号
  • :set syntax on:启用语法高亮
  • :set syntax off:禁用语法高亮
  • :!:执行系统命令
  • :sh:切换到命令行
  • Ctrl + D:切换回 Vim
VIM 模式
命令模式(常规模式)
  • i:在光标前插入文本
  • a:在光标后插入文本
  • o:在当前行下方插入新行
  • dd:删除整行
  • yy:复制当前行
  • nyy:复制 n 行
  • p:粘贴
  • u:撤销
  • Ctrl + r:重做
  • r:替换当前字符
  • /关键字:查找关键字
插入模式
  • i:进入插入模式
  • a:进入插入模式(在光标后)
  • o:在当前行下方插入新行并进入插入模式
  • Esc:返回命令模式
Ex 模式
  • ::进入 Ex 模式
  • :w:保存修改
  • :q:退出
  • :wq!:强制保存并退出
  • :x:保存并退出
  • :!:执行系统命令
  • :sh:切换到命令行
  • Ctrl + D:切换回 Vim
配置 VIM
一般设定
" 设定默认解码
set fenc=utf-8
set fencs=utf-8,usc-bom,euc-jp,gb18030,gbk,gb2312,cp936" 不要使用 vi 的键盘模式,而是 vim 自己的
set nocompatible" history 文件中需要记录的行数
set history=100" 在处理未保存或只读文件的时候,弹出确认
set confirm" 与 Windows 共享剪贴板
set clipboard+=unnamed" 侦测文件类型
filetype on
filetype plugin on
filetype indent on" 保存全局变量
set viminfo+=!" 带有如下符号的单词不要被换行分割
set iskeyword+=_,$,@,%,#,-" 语法高亮
syntax on" 高亮字符,让其不受100列限制
highlight OverLength ctermbg=red ctermfg=white guibg=red guifg=white
match OverLength '%101v.*'" 状态行颜色
highlight StatusLine guifg=SlateBlue guibg=Yellow
highlight StatusLineNC guifg=Gray guibg=White" 在状态行上显示光标所在位置的行号和列号
set ruler
set rulerformat=%20(%2*%<%f%=\ %m%r\ %3l\ %c\ %p%%%)" 命令行(在状态行下)的高度,默认为1,这里是2
set cmdheight=2" 使回格键(backspace)正常处理 indent, eol, start 等
set backspace=2" 允许 backspace 和光标键跨越行边界
set whichwrap+=<,>,h,l" 可以在 buffer 的任何地方使用鼠标(类似 Office 中在工作区双击鼠标定位)
set mouse=a
set selection=exclusive
set selectmode=mouse,key" 启动的时候不显示帮助信息
set shortmess=atI" 通过使用 :commands 命令,告诉我们文件的哪一行被改变过
set report=0" 不让 vim 发出讨厌的滴滴声
set noerrorbells" 在被分割的窗口间显示空白,便于阅读
set fillchars=vert:\ ,stl:\ ,stlnc:\
文件设置
" 不要备份文件(根据自己需要取舍)
set nobackup" 不要生成 swap 文件,当 buffer 被丢弃的时候隐藏它
setlocal noswapfile
set bufhidden=hide" 字符间插入的像素行数目
set linespace=0" 增强模式中的命令行自动完成操作
set wildmenu" 自动缩进
set autoindent
set smartindent
set cindent" 制表符设置
set tabstop=4
set softtabstop=4
set shiftwidth=4
set noexpandtab" 不要换行
set nowrap" 在行和段开始处使用制表符
set smarttab
CTags 的设定
" 按照名称排序
let Tlist_Sort_Type = "name"" 在右侧显示窗口
let Tlist_Use_Right_Window = 1" 压缩方式
let Tlist_Compart_Format = 1" 如果只有一个 buffer,kill 窗口也 kill 掉 buffer
let Tlist_Exist_OnlyWindow = 1" 不要关闭其他文件的 tags
let Tlist_File_Fold_Auto_Close = 0" 不要显示折叠树
let Tlist_Enable_Fold_Column = 0
Autocommands
" 只在下列文件类型被侦测到的时候显示行号,普通文本文件不显示
if has("autocmd")autocmd FileType xml,html,c,cs,java,perl,shell,bash,cpp,python,vim,php,ruby set numberautocmd FileType xml,html vmap
endif

27. 进阶工具

图形化工具
  • meld:文件比较与合并工具(需安装 meld

  • inxi:显示系统信息(需安装 inxi

  • nmon:全面的性能监控工具(需安装 nmon

  • gnome-search-tool:全盘搜索文件的图形化工具

  • firefox
    

    :安装 Flash Player 插件

    • 下载插件:install_flash_player_9_linux.tar.gz
    • 解压并安装:tar -zxf install_flash_player_9_linux.tar.gz./flashplayer-installer
    • 拷贝插件到 Firefox 插件目录:sudo cp libflashplayer.so /usr/lib/firefox/plugins
  • filezilla
    

    :FTP 文件传输工具,支持中文目录显示

    • 安装:sudo apt-get install filezilla

    • 设置中文显示:

      1. 下载 FileZilla 中文包到本地目录,如 ~/

      2. 解压:unrar x Filezilla3_zhCN.rar

      3. 如果没有 unrar,先安装:sudo apt-get install rar unrar

      4. 创建符号链接:sudo ln -f /usr/bin/rar /usr/bin/unrar

      5. 备份原语言包并安装新语言包:

        sudo cp /usr/share/locale/zh_CN/filezilla.mo /usr/share/locale/zh_CN/filezilla.mo.bak
        sudo cp ~/locale/zh_CN/filezilla.mo /usr/share/locale/zh_CN/filezilla.mo
        
      6. 重启 FileZilla 即可

网络工具
  • netcat (nc):网络连接调试工具
  • mtr:结合了 pingtraceroute 的网络诊断工具(需安装 mtr
  • wireshark:网络协议分析工具(需安装 wireshark
性能监控
  • htop:增强版 top,提供更友好的界面和更多功能(需安装 htop
  • glances:跨平台的系统监控工具(需安装 glances
  • nmon:全面的性能监控工具(需安装 nmon
  • watch -n 1 'df -h':每秒刷新一次显示磁盘使用情况
  • sar:系统活动报告,提供详细的 CPU、内存、磁盘等历史信息(需安装 sysstat

28. 附录:常用快捷命令

  • 快速查找某个文件
    • whereis filename
    • find 目录 -name 文件名
  • 查看文件类型
    • file filename
  • tail 不停地读取最新内容
    • tail -n 10 -f /var/log/apache2/access.log
  • 查看文件中间的行
    • sed -n '5,10p' /var/log/apache2/access.log:查看第五行到第十行
  • 通过 SSH 传输文件
    • 上传:scp -rp /path/filename username@remoteIP:/path
    • 下载:scp -rp username@remoteIP:/path/filename /path
  • 查看某个文件被哪些应用程序读写
    • lsof 文件名
  • 批量修改文件名
    • rename 's/.rm$/.rmvb/' *:将所有文件的后缀由 .rm 改为 .rmvb
    • rename 'tr/A-Z/a-z/' *:将所有文件名中的大写改为小写
  • 删除特殊文件名的文件
    • rm -- --help.txtrm ./--help.txt
  • 查看当前目录的子目录
    • ls -d */echo */
  • 移动最近访问过的文件
    • find . -type f -atime -30 -exec mv {} ../back \;:将最近 30 天访问过的文件移动到上级 back 目录
  • 显示最近一段时间内的文件
    • find . -mmin +120 -mmin -480 -exec more {} \;:显示最近 2 小时到 8 小时之内的文件
  • 删除特定条件的文件
    • find . -type f -mtime +30 -mtime -3600 -exec rm {} \;:删除修改时间在 30 天之前的所有文件
    • find . -name '*.avi' -o -name '*.rm' -user 'guest' -exec rm {} \;:删除 guest 用户的 .avi.rm 文件
    • find . ! -name '*.java' ! -name '*.xml' -atime +7 -exec rm {} \;:删除不以 .java.xml 结尾,且 7 天未使用的文件
  • 统计文件和目录
    • ls /usr/bin | wc -w:统计当前文件个数
    • ls -l /usr/bin | grep ^d | wc -l:统计当前目录个数
    • ls -l | grep '2006-01-01' | awk '{print $8}':显示 2006-01-01 创建的文件名

29. 总结

这个命令大全涵盖了常见的 Linux 系统管理、文件操作、磁盘管理、用户管理、网络调试、安全、进程管理等方面的命令。掌握这些命令能够帮助您更高效地管理和维护 Linux 系统。如果您有特定需求或需要更深入的操作,欢迎随时咨询!


:部分命令可能需要安装额外的软件包。例如,htopnmoninximeldtreesysstatsmartmontoolslm-sensors 等工具需通过包管理器安装。此外,某些操作需要超级用户权限(使用 sudo)。


附加信息

常用软件安装示例
  • 安装解码器、Flash Player、Java 虚拟机、微软字体

    sudo apt-get install ubuntu-restricted-extras
    
  • 安装 FileZilla FTP 工具

    sudo apt-get install filezilla
    
  • 安装 RAR 压缩和解压工具

    sudo apt-get install rar unrar
    
  • 安装媒体播放器

    sudo apt-get install mplayer mozilla-mplayer totem-xine libxine-extracodecs
    
  • 安装下载工具(多线程下载、BT下载、电驴)

    sudo apt-get install d4x amule azureus
    
  • 安装文件名编码转换工具

    sudo apt-get install convmv
    
  • 安装 MP3 标签编码转换工具

    sudo apt-get install python-mutagen
    
  • 安装控制台中文显示工具

    sudo apt-get install zhcon
    
  • 安装支持 QT 的 scim 插件以在 Eva 中输入中文

    sudo apt-get install scim-qtimm
    
  • 安装 Beryl 桌面效果

    sudo apt-get install beryl-core beryl-plugins beryl-plugins-data emerald beryl-settings beryl-manager beryl beryl-dev emerald-themes
    
  • 安装硬件传感器信息查看工具

    sudo apt-get install lm-sensors
    
  • 安装硬盘健康状况查看工具

    sudo apt-get install smartmontools
    
  • 安装系统信息查看工具

    sudo apt-get install inxi
    
  • 安装性能监控工具

    sudo apt-get install nmon
    
  • 安装系统统计工具(包含 iostatmpstatsar 等)

    sudo apt-get install sysstat
    
  • 安装完整版本的 Vim 编辑器

    sudo apt-get install vim-full
    
  • 安装 GNOME 全盘搜索工具

    sudo apt-get install gnome-search-tool
    
  • 安装图形化文件比较工具

    sudo apt-get install meld
    

相关文章:

Debian常用命令

以下是完整的 Linux 命令大全&#xff0c;适用于 Debian、Ubuntu 及其衍生系统&#xff0c;涵盖系统管理、文件操作、磁盘管理、用户管理、网络调试、安全、进程管理等多个方面。 目录 基本命令关机与重启文件和目录管理文件搜索挂载文件系统磁盘空间管理用户和群组管理文件和…...

【FFmpeg】FLV 格式分析 ③ ( Tag Body 数据块体结构 - Vedio Data 视频数据 )

文章目录 一、Tag Body 数据块体结构 - Video Data 视频数据1、Vedio Data 视频数据 类型标识2、Vedio Data 视频数据 结构分析3、Composition Time Offset 字段涉及的时间计算4、AVC Packet Type 字段说明① AVC Sequence Header 类型② AVC NALU 类型③ AVC End of Sequence …...

开源鸿蒙开发者社区记录

lava鸿蒙社区可提问 Laval社区 开源鸿蒙项目 OpenHarmony 开源鸿蒙开发者论坛 OpenHarmony 开源鸿蒙开发者论坛...

MinIO的安装与使用

目录 1、安装MinIO 1.1 下载 MinIO 可执行文件 1.2 检查 MinIO 是否安装成功 1.3 设置数据存储目录 1.4 配置环境变量&#xff08;可选&#xff09; 1.5 编写启动的脚本 1.6 开放端口 1.7 访问 2、项目实战 2.1 引入依赖 2.2 配置yml文件 2.3 编写Minio配置类 2.4…...

【分布式日志篇】从工具选型到实战部署:全面解析日志采集与管理路径

网罗开发 &#xff08;小红书、快手、视频号同名&#xff09; 大家好&#xff0c;我是 展菲&#xff0c;目前在上市企业从事人工智能项目研发管理工作&#xff0c;平时热衷于分享各种编程领域的软硬技能知识以及前沿技术&#xff0c;包括iOS、前端、Harmony OS、Java、Python等…...

Spring Boot/MVC

一、Spring Boot的创建 1.Spring Boot简化Spring程序的开发,使用注解和配置的方式开发 springboot内置了tomact服务器 tomact:web服务器,默认端口号8080,所以访问程序使用8080 src/main/java:Java源代码 src/main/resource:静态资源或配置文件,存放前端代码(js,css,html) s…...

uni-app连接EventSource

前言 uniapp默认是不支持event-source&#xff0c;这里是借助renderjs进行SSE连接 正文 引入event-source-polyfill 这里演示的是直接将代码下载到本地进行引入 下载地址 把里面的eventsource.min.js文件放到项目中的static文件夹 项目封装event-source.vue组件 <templ…...

[SCTF2019]babyre

[SCTF2019]babyre 一、查壳 无壳&#xff0c;64位 二、IDA分析 1.没有main&#xff0c;那就shifef12 点击&#xff1a; 再进&#xff1a; 都是花指令&#xff0c;所以要先解决花指令 三、解决花指令&#xff0c;得到完整的 main 往上面翻&#xff0c;注意看爆红的&#x…...

简洁实用的wordpress外贸模板

简洁、实用、大气的wordpress外贸模板&#xff0c;适合跨境电商搭建外贸B2B产品展示型网站。 简洁实用的wordpress外贸模板 - 简站WordPress主题简洁、实用、大气的wordpress外贸模板&#xff0c;适合跨境电商搭建外贸B2B产品展示型网站。https://www.jianzhanpress.com/?p828…...

每日一题 414. 第三大的数

414. 第三大的数 简单 class Solution { public:int thirdMax(vector<int>& nums) {int n nums.size();long first , second,third;first second third LONG_MIN ;bool find false;for(auto num : nums){if(num > first){ third second;second first…...

TVM框架学习笔记

TVM是陈天齐等人一个开源的深度学习编译器栈,用于优化和部署机器学习模型到各种硬件后端。它支持多种前端框架,如TensorFlow、PyTorch、ONNX等,并且可以在不同的硬件平台上运行,包括CPU、GPU和专用加速器。官方文档: Apache TVM Documentation — tvm 0.20.dev0 documenta…...

Codeforces Round 998 (Div. 3)

文章目录 EF E 原题链接 思路&#xff1a; 题目要求对于 G 中存在路径的两个点&#xff0c;在 F 中也必须存在路径&#xff0c;不是两个点存在直连的边。 两个点存在路径&#xff0c;说明俩个点在同一个连通块。我们用并查集来维护图的连通块。 最终的要求就是把 F 的并查集通…...

Vue.js 渐进式增强:如何逐步为传统项目注入活力

Vue.js 是一个渐进式框架&#xff0c;这意味着你可以将它逐步引入到现有项目中&#xff0c;而无需彻底重构。渐进式增强特别适合那些已经在使用传统服务器渲染框架&#xff08;如 PHP、Django、Laravel&#xff09;的项目&#xff0c;为它们增加动态交互功能。本篇教程将介绍如…...

【算法】经典博弈论问题——巴什博弈 python

目录 前言巴什博弈(Bash Game)小试牛刀PN分析实战检验总结 前言 博弈类问题大致分为&#xff1a; 公平组合游戏、非公平组合游戏&#xff08;绝大多数的棋类游戏&#xff09;和 反常游戏 巴什博弈(Bash Game) 一共有n颗石子&#xff0c;两个人轮流拿&#xff0c;每次可以拿1~m颗…...

【技术洞察】2024科技绘卷:浪潮、突破、未来

涌动与突破 2024年&#xff0c;科技的浪潮汹涌澎湃&#xff0c;人工智能、量子计算、脑机接口等前沿技术如同璀璨星辰&#xff0c;方便了大家的日常生活&#xff0c;也照亮了人类未来的道路。这一年&#xff0c;科技的突破与创新不断刷新着人们对未来的想象。那么回顾2024年的科…...

【0x06】HCI_Authentication_Complete事件详解

目录 一、事件概述 二、事件格式及参数 2.1. HCI_Authentication_Complete事件格式 2.2. Status 2.3. Connection_Handle 三、事件的生成于处理 3.1. 事件生成 3.2. 认证流程 3.2.1. 发送认证请求 3.2.2. 处理流程 3.2.3. 示例代码 四、应用场景 4.1. 设备配对与连…...

JS-Web API -day03

一、事件流 1.1 事件流与两个阶段说明 事件流 指的是事件完整执行过程中的流动路径 假设页面有个div标签&#xff0c;当触发事件时&#xff0c;会经历两个阶段&#xff0c;分别是捕获阶段、冒泡阶段 捕获阶段&#xff1a;Document - Element html - Elementbody - Element div…...

电子应用设计方案103:智能家庭AI浴缸系统设计

智能家庭 AI 浴缸系统设计 一、引言 智能家庭 AI 浴缸系统旨在为用户提供更加舒适、便捷和个性化的沐浴体验&#xff0c;融合了人工智能技术和先进的水疗功能。 二、系统概述 1. 系统目标 - 实现水温、水位和水流的精确控制。 - 提供多种按摩模式和水疗功能。 - 具备智能清洁…...

linux静态库+嵌套makefile

linux静态库嵌套makefile 文章目录 linux静态库嵌套makefile1、概述2、代码结构3、代码1&#xff09;main.c2&#xff09;主makefile3&#xff09;fun.c4&#xff09;func.h5&#xff09;静态库makefile 4、运行效果1&#xff09;在main.c目录下执行make2&#xff09;到output目…...

AIP-127 HTTP和gRPC转码

编号127原文链接AIP-127: HTTP and gRPC Transcoding状态批准创建日期2019-08-22更新日期2019-08-22 遵守面向资源设计的API使用RPC进行定义&#xff0c;但面向资源设计框架允许这些API表现为整体上符合REST/JSON约定的接口。这一点很重要&#xff0c;可以帮助开发者利用现有知…...

代码随想录算法训练营day32

代码随想录算法训练营 —day32 文章目录 代码随想录算法训练营前言一、动态规划理论基础二、509. 斐波那契数动态规划动态规划优化空间版递归法 三、70. 爬楼梯动态规划动态规划空间优化 746. 使用最小花费爬楼梯动态规划空间优化 总结 前言 今天是算法营的第32天&#xff0c…...

设计模式的艺术-开闭原则

原则使用频率图&#xff08;仅供参考&#xff09; 1.如何理解开闭原则 简单来说&#xff0c;开闭原则指的是 “对扩展开放&#xff0c;对修改关闭”。 当软件系统需要增加新的功能时&#xff0c;应该通过扩展现有代码的方式来实现&#xff0c;而不是去修改已有的代码。 例如我…...

【易康eCognition实验教程】003:点云数据加载浏览与操作详解

文章目录 一、加载并创建点云数据二、三维浏览1. 点云模式2. 点云视图设置 三、使用点云 一、加载并创建点云数据 本实验点云数据位于专栏配套实验数据包中的data003.rar中的terrian.las&#xff0c;解压后进行以下实验操作。 打开ecognition软件&#xff0c;点击【File】→【…...

海外雅思备考经验

1.18号斯图雅思考试 第一次考雅思&#xff0c;第一次在国外考雅思&#xff01; 最近在德国斯图加特联培&#xff0c;报考了1月18号的雅思机考&#xff0c;下面分享一些考试经验. ✌️考试地点 EZ Plus WEST Hasenbergstr. 31/1,, in the backyard of Hasenbergstrae 31, Stuttg…...

Oracle之Merge into函数使用

Merge into函数为Oracle 9i添加的语法&#xff0c;用来合并update和insert语句。所以也经常用于update语句的查询优化&#xff1a; 一、语法格式&#xff1a; merge into A using B on (A.a B.a) --注意on后面带括号&#xff0c;且不能更新join的字段 when matched then upd…...

Spring Boot 自定义属性

Spring Boot 自定义属性 在 Spring Boot 应用程序中&#xff0c;application.yml 是一个常用的配置文件格式。它允许我们以层次化的方式组织配置信息&#xff0c;并且比传统的 .properties 文件更加直观。 本文将介绍如何在 Spring Boot 中读取和使用 application.yml 中的配…...

前端面试题-问答篇-5万字!

1. 请描述CSS中的层叠&#xff08;Cascade&#xff09;和继承&#xff08;Inheritance&#xff09;规则&#xff0c;以及它们在实际开发中的应用。 在CSS中&#xff0c;层叠&#xff08;Cascade&#xff09;和继承&#xff08;Inheritance&#xff09;是两个关键的规则&#x…...

2025年1月21日(树莓派点亮呼吸灯第一次修改)

系统信息&#xff1a; Raspberry Pi Zero 2W 系统版本&#xff1a; 2024-10-22-raspios-bullseye-armhf Python 版本&#xff1a;Python 3.9.2 已安装 pip3 支持拍摄 1080p 30 (1092*1080), 720p 60 (1280*720), 60/90 (640*480) 已安装 vim 已安装 git 学习目标&#xff1a;…...

【Linux网络编程】传输层协议

目录 一&#xff0c;传输层的介绍 二&#xff0c;UDP协议 2-1&#xff0c;UDP的特点 2-2&#xff0c;UDP协议端格式 三&#xff0c;TCP协议 3-1&#xff0c;TCP报文格式 3-2&#xff0c;TCP三次握手 3-3&#xff0c;TCP四次挥手 3-4&#xff0c;滑动窗口 3-5&#xf…...

JavaScript系列(41)--状态管理实现详解

JavaScript状态管理实现详解 &#x1f504; 今天&#xff0c;让我们深入探讨JavaScript的状态管理实现。状态管理是现代前端应用中的核心概念&#xff0c;它帮助我们有效地管理和同步应用数据。 状态管理基础概念 &#x1f31f; &#x1f4a1; 小知识&#xff1a;状态管理是一…...

flume和kafka整合 flume和kafka为什么一起用?

‌Flume和Kafka一起使用的主要原因是为了实现高效、可靠的数据采集和实时处理。‌‌12 实时流式日志处理的需求 Flume和Kafka结合使用的主要目的是为了完成实时流式的日志处理。Flume负责数据的采集和传输,而Kafka则作为消息缓存队列,能够有效地缓冲数据,防止数据堆积或丢…...

【深度学习】 自动微分

自动微分 正如上节所说&#xff0c;求导是几乎所有深度学习优化算法的关键步骤。 虽然求导的计算很简单&#xff0c;只需要一些基本的微积分。 但对于复杂的模型&#xff0c;手工进行更新是一件很痛苦的事情&#xff08;而且经常容易出错&#xff09;。 深度学习框架通过自动…...

什么是三高架构?

大家好&#xff0c;我是锋哥。今天分享关于【什么是三高架构?】面试题。希望对大家有帮助&#xff1b; 什么是三高架构? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 “三高架构”通常是指高可用性&#xff08;High Availability&#xff09;、高性能&#xff…...

IOS 自定义代理协议Delegate

QuestionViewCell.h文件代码&#xff0c;定义代理协议 protocol QuestionViewCellDelegate <NSObject>- (void)cellIsOpenDidChangeAtIndexPath:(NSIndexPath *)indexPath;endinterface QuestionViewCell : UITableViewCellproperty (nonatomic, weak) id<QuestionVi…...

【flutter版本升级】【Nativeshell适配】nativeshell需要做哪些更改

flutter 从3.13.9 升级&#xff1a;3.27.2 nativeshell组合库中的 1、nativeshell_build库替换为github上的最新代码 可以解决两个问题&#xff1a; 一个是arg("--ExtraFrontEndOptions--no-sound-null-safety") 在新版flutter中这个构建参数不支持了导致的build错误…...

C#编程:List.ForEach与foreach循环的深度对比

在C#中&#xff0c;List<T>.ForEach 方法和传统的 foreach 循环都用于遍历列表中的元素并对每个元素执行操作&#xff0c;但它们之间有一些关键的区别。 List<T>.ForEach 方法 方法签名&#xff1a;public void ForEach(Action<T> action)类型&#xff1a;…...

leetcode_2762. 不间断子数组

2762. 不间断子数组 - 力扣&#xff08;LeetCode&#xff09; 运用滑动窗口和multise(平衡二叉树实现) 符合条件 右窗口向右扩展 不符合条件 左窗口向左扩展 class Solution { public:long long continuousSubarrays(vector<int>& nums) {int max, min; //表示窗…...

Java学习教程,从入门到精通,JDBC创建数据库语法知识点及案例代码(99)

JDBC创建数据库语法知识点及案例代码 一、JDBC创建数据库语法 在JDBC中&#xff0c;创建数据库主要通过执行SQL语句来实现。其基本语法如下&#xff1a; CREATE DATABASE database_name;CREATE DATABASE 是固定的SQL语句关键字&#xff0c;用于指定创建数据库的操作。databa…...

进阶——第十六届蓝桥杯(sscanf的运用)

声明变量 char tx_buf[30];char rx_buf[30];char car_type[5];char car_num[5];char car_time[15]; int sscanf(const char *str, const char *format,...); sscanf函数功能 sscanf 函数从字符串 str 中读取数据&#xff0c;根据 format 所指定的格式将数据存储到后续的变量中…...

嵌入式硬件篇---ADC模拟-数字转换

文章目录 前言第一部分&#xff1a;STM32 ADC的主要特点1.分辨率2.多通道3.转换模式4.转换速度5.触发源6.数据对齐7.温度传感器和Vrefint通道 第二部分&#xff1a;STM32 ADC的工作流程&#xff1a;1.配置ADC2.启动ADC转换 第三部分&#xff1a;ADC转化1.抽样2.量化3.编码 第四…...

Spark Streaming编程基础

文章目录 1. 流式词频统计1.1 Spark Streaming编程步骤1.2 流式词频统计项目1.2.1 创建项目1.2.2 添加项目依赖1.2.3 修改源目录1.2.4 添加scala-sdk库1.2.5 创建日志属性文件 1.3 创建词频统计对象1.4 利用nc发送数据1.5 启动应用&#xff0c;查看结果 2. 编程模型的基本概念3…...

android wifi AsyncChannel(WifiManager和WifiP2pManager)

AynscChannel的讲解 [Android]AsyncChannel介绍-CSDN博客 WifiP2pManager里的channel的使用理解 WifiP2pManager.java public void createGroup(Channel c, ActionListener listener) {checkChannel(c);c.mAsyncChannel.sendMessage(CREATE_GROUP, WifiP2pGroup.NETWORK_ID_PE…...

生存网络与mlr3proba

在R语言中,mlr3包是一个用于机器学习的强大工具包。它提供了一种简单且灵活的方式来执行超参数调整。 生存网络是一种用于生存分析的模型,常用在医学和生物学领域。生存分析是一种统计方法,用于研究事件发生的时间和相关因素对事件发生的影响。生存网络可以用来预测个体在给…...

C#Object类型的索引,序列化和反序列化

前言 最近在编写一篇关于标准Mes接口框架的文章。其中有一个非常需要考究的内容时如果实现数据灵活和可使用性强。因为考虑数据灵活性&#xff0c;所以我一开始选取了Object类型作为数据类型&#xff0c;Object作为数据Value字段&#xff0c;String作为数据Key字段&#xff0c…...

【动态规划】记忆化搜索

Ban or Problem - A - Codeforces 【CCPC】2022年绵阳站部分题解&#xff08;ACGM&#xff09;_ban or pick, whats the trick-CSDN博客 #include<iostream> using namespace std; #include<cstring> #include<algorithm> #define inf -0x3f3f3f3f #defi…...

深度学习 DAY1:RNN 神经网络及其变体网络(LSTM、GRU)

实验介绍 RNN 网络是一种基础的多层反馈神经网络&#xff0c;该神经网络的节点定向连接成环&#xff0c;其内部状态可以展示动态时序行为。相比于前馈神经网络&#xff0c;该网络内部具有很强的记忆性&#xff0c;它可以利用它内部的记忆来处理任意时序的输入序列&#xff0c;…...

BW复制ERP数据源跑程序激活后才可见

场景&#xff1a; BW提取ERP数据走ODP通道之后&#xff0c;数据源需要用下列程序激活加入白名单后才能被BW系统访问到&#xff1b; 检查&#xff1a; 1、RSA6检查数据源是否可正常使用&#xff0c;若为绿√表示可正常访问&#xff0c;反之&#xff0c;则不行。 2、白名单表ROO…...

MarsCode青训营打卡Day10(2025年1月23日)|稀土掘金-147.寻找独一无二的糖葫芦串、119.游戏队友搜索

资源引用&#xff1a; 147.寻找独一无二的糖葫芦串 119.游戏队友搜索 今日小记&#xff1a; 回乡聚会陪家人&#xff0c;休息一天~ 稀土掘金-147.寻找独一无二的糖葫芦串&#xff08;147.寻找独一无二的糖葫芦串&#xff09; 题目分析&#xff1a; 给定n个长度为m的字符串表…...

无人机 PX4 飞控 | PX4源码添加自定义参数方法并用QGC显示与调整

无人机 PX4 飞控 | PX4源码添加自定义参数方法并用QGC显示与调整 0 前言 之前文章添加了一个自定义的模块&#xff0c;本篇文章在之前的自定义模块中&#xff0c;添加两个自定义参数 使用QGC显示出来&#xff0c;并通过QGC调整参数值&#xff0c;代码实现参数更新 新增的参…...

【全栈】SprintBoot+vue3迷你商城-扩展:vue3项目创建及目录介绍

【全栈】SprintBootvue3迷你商城-扩展&#xff1a;vue3项目创建及目录介绍 往期的文章都在这里啦&#xff0c;大家有兴趣可以看一下 【全栈】SprintBootvue3迷你商城&#xff08;1&#xff09; 【全栈】SprintBootvue3迷你商城&#xff08;2&#xff09; 【全栈】SprintBootvu…...