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

嵌入式Linux开发环境学习(二)

嵌入式Linux开发环境学习(二)

一、嵌入式Linux命令

网络命令

ifconfig/ip
  • 配置网络接口命令----ifconfig/ip

    1. 基本语法:ifconfig [参数] [网卡名称] [操作]

    2. 现阶段常用操作:直接使用ifconfig命令查看系统的IP地址,MAC地址,网络接口状态

    3. 命令代替:ip命令作为Linux系统中最新的网络配置命令,在功能上覆盖了ifconfig命令

文件操作命令/符号

重定向符
  • >:输出重定向

    1. 作用:将标准输出写入文件(覆盖模式)

    2. 常用示例:ls > file.txt

  • >>:追加重定向

    1. 作用:将标准输出写入文件(追加模式)

    2. 常用示例:echo "new" >> file.txt

  • <:输入重定向

    1. 作用:将文件内容作为标准输入

    2. 常用示例:sort < input.txt

  • |:管道符

    1. 作用:将一个命令的标准输出作为另一个命令的标准输入

    2. 常用示例:ls | grep ".txt"

通配符简介
  • 通配符是一类特殊字符,它们本身不代表自己,而是作为”占位符“或“通配符”,用来匹配文件或路径名中的一部分,在命令中使用通配符时,shell会首先展开通配符,将其替换为所有匹配的文件名,然后再将完整的命令传递给执行程序,其主要作用为让用户能够用简洁的模式一次性的操作多个文件,而无需一次次的输入文件名

  • 常见通配符如下:

    1. *:星号用来匹配任意长度的任意字符串(例如 ls *.txt:列出所有以.txt结尾的文件)

    2. ?:问号用来匹配任意单个字符(例如ls ?.txt:列出所有由单个字符后跟.txt组成的文件)

正则表达式简介

在Linux系统中,正则表达式是一种强大的文本匹配工具,相较于通配符,其语法更加复杂,通配符主要用于文件名/路径名匹配(由shell处理),而正则表达式常用于复杂的文本搜索和模式匹配,应用于grep,awk,sed等命令和脚本编程中,它能够通过特定语法规则快速定位,过滤或替换复杂的文本模式练习网站

grep
  • 作用:在指定文件中查找文件里符合条件的字符串正则表达式

  • 语法结构:grep [选项] [文件名]

    1. -i:忽略大小写进行查找匹配

    2. -v:反向查找匹配

    3. -n:显示匹配的行号

    4. -r:递归查找子目录中的文件

    5. -l:只打印匹配的文件名

    6. -c:只打印匹配的行数

  • 常用示例:grep -r -n ”hello“ /(在根目录下递归寻找含有hello的行)

find
  • 作用:在指定目录下查找文件和目录

  • 语法格式:find [路径] [选项] [匹配内容]

  • 新学习的选项:-exec,-xargs,-type

  • -exec:

    1. 语法格式:find [路径] [选项] -exec 命令 {}\;

      • {}:是一个占位符,会被当前找到的文件路径替换

      • \;是转义的分号,用于标记-exec参数的结束

    2. 功能介绍:对find匹配到的结果进行进一步的处理

    3. 实现逻辑:每匹配到一个文件,就启动一个新的进程来执行指定的命令

      • 假设find找到三个文件:file1.txt file2.txt file3.txt find . -name "*.txt" -exec ls -l{} \; 实际相当于执行: ls -l ./file1.txt ls -l ./file2.txt ls -l ./file3.txt

    4. 用法示例:find . -name "*.c" | xargs grep -n "main"(查找当前目录下的.c文件,并输出含有main的行)

  • -xargs:

    1. 常见语法格式:find [搜索路径] [搜索条件] -print0 | xargs -0 [选项] [命令]

    2. 功能介绍:将找到的文件批量处理,尽可能减少命令执行的次数

    3. 实现逻辑:

      • 假设find找到三个文件:file1.txt file2.txt file3.txt find . -name "*.txt" | xargs ls -l 实际相当于执行: ls -l ./file1.txt ./file2.txt ./file3.txt

  • -type:

    1. 功能介绍:按照文件类型匹配目标文件

    2. 文件类型选项介绍:

      • d:目录文件

      • c:字符型设备文件

      • f:普通文件

      • s:套接字文件

which
  • 功能:查找命令文件,会在环境变量$PATH设置的目录里查找符合条件的文件

  • 语法结构:which [命令名]

wc
  • 功能介绍:统计文件内容,例如文件的字节数,字数或是列数

  • 语法格式:wc [选项] [文件名]

    1. -c:统计字节数

    2. -l:统计行数

    3. -w:统计单词数

  • 用法示例:wc -c file.txt //统计目标文件中的字节数

split
  • 功能介绍:文件分割,将一个大文件分割成多个相同属性的小文件

  • 语法格式:split [选项] [要拆分的源文件] [输出文件前缀]

    1. -l:设置分割文件后每个文件的行数

    2. -b:设置分割后每个文件的大小

  • 常见示例:    split -b 10M file.txt f //以10MB一份的大小进行文件分割

sort
  • 功能介绍:文本排序工具,默认以行为单位,从每行的首字符开始,按照ASCII比较

  • 语法格式:sort [选项] [文件名]

    1. -b:忽视每行前面出现的空格

    2. -f:将小写字符视作大写字母进行排序

    3. -r:反序排列

    4. -t<分隔符>:指定分隔符、

    5. -k:对指定列进行排序

  • 常用示例:sort -r names.txt //逆序排列目标文件中结果

cut
  • 功能介绍:用于显示每行从开头算起num1到num2的文字的命令

  • 语法结构:cut [选项] [文件]

    1. -b:以字节为单位进行分割

    2. -c:以字符为单位进行分割

    3. -d:自定义分隔符

    4. -f:与-d一起使用,指定分隔符

  • 常用示例:cut -c1,3,5 data.txt //提取每行的1,3,5个字符

进程管理命令

ps
  • 功能介绍:显示进程状态

  • 语法结构:ps [选项]

    1. -e:显示所有进程

    2. -f:显示完整格式的详细信息,包括进程之间的层级关系

    3. -a:显示当前终端下的所有进程

kill
  • 功能介绍:终结指定命令

  • 语法结构:kill [进程号]

二、嵌入式Linux开发工具

vim

  • 功能简介:一个功能强大且高度可定制的文本编辑器,是vi的增强版本

  • 语法格式:vim [选项] [文件名]

三种工作模式
  1. 命令模式

    • 初始模式,打开文件时的默认格式,此状态下敲击键盘会被识别为命令

    • 常用命令:

      i -- 切换到输入模式,在光标当前位置开始输入文本 x -- 删除当前光标所在处的字符 : -- 切换到底线命令模式,以在最底一行输入命令 a -- 进入插入模式,在光标下一个位置开始输入文本 o:在当前行的下方插入一个新行,并进入插入模式 O -- 在当前行的上方插入一个新行,并进入插入模式 dd -- 剪切当前行 yy -- 复制当前行 p(小写) -- 粘贴剪贴板内容到光标下方 P(大写)-- 粘贴剪贴板内容到光标上方 u -- 撤销上一次操作 Ctrl + r -- 重做上一次撤销的操作 :w -- 保存文件 :q -- 退出 Vim 编辑器 :q! -- 强制退出Vim 编辑器,不保存修改

  2. 插入模式

    • 在命令模式下按下i/o/a即可切换到插入模式,此状态下可以正常对文本内容进行编辑

    • 按下esc键可以切换到命令模式

  3. 底线命令模式

    • 在命令模式下按下:(英文冒号)即可切换到命令行模式,此状态下可以执行不同命令

    • 按下esc按键退回到命令模式

vim配置
  • vim原生状态下使用及其不便,需要一步步的配置来提高编写效率

  • 配置流程

    1. 在根目录下创建.vimrc文件(vim ~/.vimrc)

    2. 修改.vimrc文件内容(将如下内容复制到.vimrc文件中即可)

      syntax on "语法高亮
      set number "显示行号
      set tabstop = 4 "设置缩进大小
      set autoindent "开启自动缩进
      set mouse = a "设置鼠标可用
      set cursorline "高亮显示光标当前所在行
      set cindent "针对C语言的自动缩进
      set st = 4 " Set the width of the soft tab to 4 spaces
      set shiftwidth = 4 "设置自动缩进宽度为4个空格
      set sts = 4 "设置插入模式下tab键的大小为4个空格
      set ruler "显示光标当前所在位置的行号和列号
      set showmode "显示当前vim的工作模式
      set bg = dark "设置暗色背景
      set hlsearch "搜索高亮
      set laststatus = 2 "显示状态栏
      复制时去掉注释

配置效果

三、远程连接Linux操作系统

为了解决虚拟机卡顿和云服务器使用问题,需要通过远程连接来对系统进行操作

SSH协议介绍

Secure Shell(SSH)是制定在应用层基础上的安全网络协议,它是专为远程登录会话(可以使用Windows远程登录Linux服务器进行文件互传)和其它网络服务提供安全性的协议,可以有效的弥补网络中的漏洞,通过ssh,可以把所有传输的数据进行加密,传输的数据是经过压缩的,所以可以加快传输的速度。

连接步骤

  1. 首先需要在Linux操作系统中安装SSH客户端和服务器,分别通过sudo apt-get install openssh-clientsudo apt-get install openssh-server命令来完成

  2. 然后需要下载第三方软件来连接服务器,这里使用的是MobaXterm软件进行远程连接,连接步骤简单

http://www.dtcms.com/a/503288.html

相关文章:

  • 分析静态代码分析工具
  • unix做网站常用的数据库用php做网站后台
  • Fiddler抓包+Postman实战之--客户关系管理软件自动化测试
  • 『 数据库 』MySQL复习 - 从更新删除到分组聚合查询实践
  • 力扣2025.10.19每日一题
  • 广州站扩建百度系app
  • 品牌微信网站开发企业网站排版规则
  • Java Socket 多线程实例
  • 机器学习01——概述
  • es的docker部署和docker相关的可可视化面板工具介绍
  • Java 反射机制深度剖析:性能与安全性的那些坑
  • SQLDeveloper 调试存储过程ORA-24247
  • 网站虚拟主机过期云霄县建设局网站
  • 如何通过共享内存和寄存器溢出优化CUDA内核性能
  • ArcMap转化图片为TIF
  • Kubernetes(K8s) —— 部署(保姆级教程)
  • 用 Python 写一个自动化办公小助手
  • 《二叉树“防塌”指南:AVL 树如何用旋转 “稳住” 平衡?》
  • 网站制作wap页面wordpress微信公众平台开发
  • 分解如何利用c++修复小程序的BUG
  • 若依微服务 nacos的配置文件
  • 63.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--新增功能--预算告警
  • 网站建设没有业务怎么办德州网架公司
  • 九成自动化备份知乎专栏
  • 圆形平面阵列与平面方形阵的导向矢量:原理与实现
  • Altium Designer(AD24)Help帮助功能总结
  • 网站建设 个人2012版本wordpress
  • 6.2 域名系统 (答案见原书 P271)
  • php怎么网站开发上海网站建设86215
  • C程序中的指针:动态内存、链表与函数指针