[技巧]linux常用命令(嵌入式软件开发持续更新)

文章目录

    • 一、串口操作
      • 1. dialout用户组
      • 2. Ubuntu串口调试助手
    • 二、JTAG调试
      • 1. plugdev分组
    • 三、文件操作
      • 1. 创建软链接(快捷方式)
      • 2. 文件与文件夹搜索
      • 3. 输入输出重定向
      • 4、正则表达式
    • 四、git版本控制
      • 完整克隆远程代码仓库(包括submodule)
    • 五、网络
      • 查看网络端口占用

一、串口操作

1. dialout用户组

操作串口,需要将当前用户加入dialout用户组
The currently logged user should have read and write access the serial port over USB. On most Linux distributions, this is done by adding the user to dialout group with the following command:

sudo usermod -a -G dialout $USER

Other System Groups

2. Ubuntu串口调试助手

  • cutecom : 习惯Windows串口助手的可以使用这个
    [技巧]linux常用命令(嵌入式软件开发持续更新)_第1张图片
  • minicom : 功能强大,就是不会用,特别是不知道怎么发数据,还要研究
    [技巧]linux常用命令(嵌入式软件开发持续更新)_第2张图片

二、JTAG调试

1. plugdev分组

操作调试设备,一般需要将用户添加到plugdev分组

plugdev: Allows members to mount (only with the options nodev and nosuid, for security reasons) and umount removable devices through pmount.

Permissions delegation
----------------------

Running OpenOCD with root/administrative permissions is strongly
discouraged for security reasons.

For USB devices on GNU/Linux you should use the contrib/60-openocd.rules
file. It probably belongs somewhere in /etc/udev/rules.d, but
consult your operating system documentation to be sure. Do not forget
to add yourself to the "plugdev" group.

For parallel port adapters on GNU/Linux and FreeBSD please change your
"ppdev" (parport* or ppi*) device node permissions accordingly.

For parport adapters on Windows you need to run install_giveio.bat
(it's also possible to use "ioperm" with Cygwin instead) to give
ordinary users permissions for accessing the "LPT" registers directly.

ESP32使用JTAG调试配置指南

三、文件操作

1. 创建软链接(快捷方式)

ln -s [源文件或目录] [目标文件或目录]

linux硬链接与软链接的联系与区别

2. 文件与文件夹搜索

查找目录:find /(查找范围) -name '查找关键字' -type d
查找文件:find /(查找范围) -name 查找关键字 -print
参数:
-type    b/d/c/p/l/f        #查是块设备、目录、字符设备、管道、符号链接、普通文件

3. 输入输出重定向

输入输出 文件描述符 作用
STDIN 0 默认键盘输入
STDOUT 1 默认控制台输出到屏幕
STDERR 2 默认控制台输出到屏幕
  • 输出重定向用于将程序输出重定向到文本,进行保存
输出符号 作用
命令 > 文件 将标准输出重定向到文件(清空源文件内容)
命令 > > 文件 将标准输出重定向到文件(在源文件内容后追加)
命令 2 > 文件 将错误输出重定向到文件(清空源文件内容)
命令 2> > 文件 将错误输出重定向到文件(在源文件内容后追加)
命令 &> > 文件 将标准输出和错误输出重定向到文件(在源文件内容后追加)

例将echo输出的内容重定向到文件,若文件不存在则自动创建
# echo "helloworld" > helloworld.txt

  • 输入重定向用于从文本等读取参数或命令并执行
输入符号 作用
命令 < 文件 将文件作为命令的标准输入
命令 << 分界符 从标准输入读入,知道遇到分界符停止
命令 < 文件1 > 文件2 将文件1作为命令的标准输入并将标准输出到文件2

例读取 helloworld.txt文本的行数
# wc -l < helloworld.txt

4、正则表达式

  • 基本匹配
[a-zA-Z] //匹配所有的字母 
[0-9] //匹配所有的数字 
[0-9\.\-] //匹配所有的数字,句号和减号 
  • 匹配多个
a{2,}	//如:baad和aaa,但Nantucket不行
[a-z]{2,}	

特殊字符 * 与 {0,} 是相等的,它们都代表着 0 个或多个前面的内容 。最后,字符 + 与 {1,} 是相等的,表示 1 个或多个前面的内容

  • 匹配限定开头和结尾
^[^0-9][0-9]$ // 这个模式与"&5"、"g7"及"-2"是匹配的,但与"12"、"66"是不匹配的。

四、git版本控制

完整克隆远程代码仓库(包括submodule)

git clone --recursive

五、网络

查看网络端口占用

lsof -i:8888
``

你可能感兴趣的:(技巧,ubuntu使用笔记)