Ubuntu Linux 零基础入门教程(ROS / 嵌入式开发必学)
嵌入式开发必备,ROS开发基础,Ubuntu基本操作
一, 常用基础命令行
知识点 1:终端基础认知
终端是 Ubuntu 中通过命令行操作系统的工具,输入命令后按回车执行。
命令格式:命令 [参数] [目标](参数可选,用于扩展命令功能)。
快捷键:Ctrl+C(终止当前命令)、Tab(自动补全文件名 / 目录名)、上下箭头(查看历史命令)。
知识点 2:逐个命令教学(一步一敲)
1. 切换目录(cd):
(change【/tʃeɪndʒ/】【改变,切换】 directory【/dəˈrektəri/】【目录,文件夹】)
cd
作用:切换到指定目录(类似 Windows 中双击文件夹)。
常用用法:
回到 “家目录”(当前用户的默认目录):输入 cd ,按回车(家目录路径是 /home/你的用户名)。
进入当前目录下的子目录:比如进入 “文档” 目录,输入 cd 文档 (注意 “文档” 是英文的 Documents【 /ˈdɒkjuments/】【文件夹名】,若系统是中文则直接输 “文档”),按回车。
进入上级目录:输入 cd .. (两个点),按回车。
进入绝对路径目录:比如进入系统根目录,输入 cd / ,按回车;进入 tmp 目录,输入 cd /tmp ,按回车。
2. 查看目录内容:ls(list)【/lɪst/】【信息名单,列表】
ls
作用:查看当前目录或指定目录下的文件和子目录。
常用用法:
查看当前目录内容:输入 ls ,按回车(显示文件名和目录名,默认不显示隐藏文件)。
显示详细信息(权限、大小、修改时间等):输入 ls -l (缩写为 ll ,很多系统已默认支持),按回车。
显示隐藏文件(Linux 中以 “.” 开头的是隐藏文件):输入 ls -a ,按回车。
查看指定目录内容:比如查看家目录下的文档目录,输入 ls 文档 ,按回车。
3.创建文件夹(目录):mkdir(make directory)【/meɪk/】【创建,制作】【/dəˈrektri/】【目录,文件夹】
mkdir
作用:创建空目录(文件夹),是 Linux 中组织文件的核心命令,支持创建单个目录、多级目录、批量目录。
a. 创建单个空目录
cd ~ # 回到家目录(后续所有操作默认在家目录执行)
mkdir test_dir # 创建名为test_dir的空目录
ls -l # 验证,能看到 drwxr-xr-x 开头的 test_dir
b.创建多级目录(父目录不存在时,必须加 - p 参数)
# 需求:创建 dir1/dir2/dir3 三级目录(dir1、dir2原本不存在)
mkdir dir1/dir2/dir3 # 直接输会报错:没有那个文件或目录
mkdir -p dir1/dir2/dir3 # 加-p参数,自动创建所有父目录
ls -R dir1 # 递归查看dir1下的目录,能看到dir2和dir3
c. 批量创建多个目录
mkdir dir_a dir_b dir_c # 一次创建dir_a、dir_b、dir_c三个空目录
ls -l # 验证,能看到这三个目录
d.创建带权限的目录(创建时直接指定权限,替代后续 chmod)
mkdir -m 700 secret_dir # -m指定权限,700=仅所有者能读/写/执行
ls -ld secret_dir # 验证,输出 drwx------ 开头
4.创建文件:touch + echo(覆盖空文件 / 有内容文件)【 /ˈekəʊ/】【输出,打印指定】【 /tʌtʃ/】【触摸】
touch
a. 基础创建空文件:touch
作用:创建全新的空文件;
若文件已存在,仅更新文件的 “最后修改时间”(不会删除原有内容)。
# 1. 创建单个空文件
touch file1.txt # 创建空的file1.txt
ls -l file1.txt # 验证,输出 -rw-r--r-- 开头,大小为0
# 2. 批量创建多个空文件
touch file2.txt file3.txt file4.log # 一次创建txt和log类型的空文件
ls -l # 验证能看到这三个文件
# 3. 给已存在的文件更新修改时间
touch file1.txt # file1.txt已存在,仅更新时间
ls -l file1.txt # 查看修改时间,和当前时间一致
5.创建带内容的文件:echo(替代 touch + 编辑器,快速写内容)
# 1. 创建带单行内容的文件(> 会覆盖原有文件内容)
echo "Hello Linux" > content.txt # 创建content.txt,写入“Hello Linux”
cat content.txt # 查看文件内容,验证输出 Hello Linux
# 2. 给文件追加内容(>> 不会覆盖,在末尾加内容)
echo "这是追加的第二行" >> content.txt
cat content.txt # 验证,能看到两行内容:
# Hello Linux
# 这是追加的第二行
# 3. 创建空文件(等价于touch,仅作补充)
echo "" > empty_file.txt # 创建空的empty_file.txt
ls -l empty_file.txt # 大小为0,和touch效果一致
补充:创建隐藏文件(Linux 中以。开头)
touch .hidden_file.txt # 创建隐藏文件.hidden_file.txt
ls # 看不到该文件
ls -a # 显示隐藏文件,能看到.hidden_file.txt
6. 复制文件 / 目录:cp(copy)【/ˈkɒpi/】【复制】
cp
作用:复制文件或目录到指定位置。
常用用法:
复制文件:比如在家目录创建一个 test.txt 文件(后续练习用),先输入 touch test.txt (创建空文件),再输入 cp test.txt 文档/ ,按回车(将 test.txt 复制到 “文档” 目录下)。
复制并改名:输入 cp test.txt 文档/test_copy.txt ,按回车(复制到文档目录并改名为 test_copy.txt)。
复制目录(必须加 -r 参数,递归复制):先创建 test_dir 目录 mkdir test_dir ,再输入 cp -r test_dir 文档/ ,按回车(将 test_dir 目录及内容复制到文档目录)。
7. 移动 / 重命名文件 / 目录:mv(move)【/muːv/】【移动】
mv
作用:移动文件 / 目录到指定位置,或直接重命名。
常用用法:
重命名文件:输入 mv test.txt test_rename.txt ,按回车(将 test.txt 改名为 test_rename.txt)。
移动文件:输入 mv test_rename.txt 文档/ ,按回车(将改名后的文件移动到文档目录)。
重命名目录:输入 mv test_dir test_dir_rename ,按回车。
移动目录:输入 mv test_dir_rename 文档/ ,按回车。
8. 删除文件 / 目录:rm(remove)【 /rɪˈmuːv/】【移除, 清除】
作用:删除文件或目录(注意:Linux 中 rm 删除的文件默认无法恢复,务必谨慎!)。
常用用法:
删除文件:先在家目录创建一个 temp.txt 文件 touch temp.txt ,输入 rm temp.txt ,按回车(删除该文件,会提示确认,输入 y 回车即可)。
强制删除文件(不提示):输入 rm -f temp2.txt (先创建 temp2.txt),按回车(适合批量删除或确认无重要内容时)。
删除空目录:创建空目录 empty_dir,mkdir empty_dir ,输入 rm -d empty_dir ,按回车。
删除非空目录(递归删除):创建目录 dir_with_file 并在里面创建文件 mkdir dir_with_file && touch dir_with_file/file.txt ,输入 rm -rf dir_with_file ,按回车(-r 递归,-f 强制,慎用!)。
常见问题提醒
输入命令时注意大小写(Linux 区分大小写,比如 LS 和 ls 是不同的)。
路径中若有空格,需用引号括起来(比如 cd "我的文件夹")或用反斜杠转义(cd 我的\文件夹)。
忘记命令参数时,输入 命令 --help (比如 ls --help)查看帮助文档。
知识点 3:cat 命令完整教学
作用:cat(concatenate,拼接 / 连接)是 Linux 最常用的文件操作命令,核心功能:
查看文件内容(最基础);
拼接多个文件内容并输出;
结合重定向 / Here Document(EOF/END)创建 / 编辑多行内容文件;
清空文件内容(快速清理日志 / 配置)。
1.cat 命令核心认知
命令格式:
cat [参数] [文件1] [文件2] ...
参数可选,用于扩展功能;
无文件时,读取终端输入(配合 EOF 常用)。
2.cat 基础用法(查看 / 拼接文件)
a. 查看单个文件内容(最常用)
实操步骤:
cd ~ # 回到家目录
touch cat_test1.txt # 创建测试文件
echo "这是cat测试文件1" > cat_test1.txt # 写入基础内容
cat cat_test1.txt # 执行cat查看文件
# 预期输出:这是cat测试文件1
b. 查看多个文件内容(拼接输出)
实操步骤:
touch cat_test2.txt # 创建第二个测试文件
echo "这是cat测试文件2" > cat_test2.txt
cat cat_test1.txt cat_test2.txt # 同时查看两个文件
# 预期输出:
# 这是cat测试文件1
# 这是cat测试文件2
c. 查看文件并显示行号(-n 参数)
实操步骤:
# 先给文件写入多行内容
echo -e "第一行\n第二行\n第三行" > cat_line.txt
cat -n cat_line.txt # -n 显示行号
# 预期输出:
# 1 第一行
# 2 第二行
# 3 第三行
d. 查看大文件(结合 more 分页)
实操步骤:
# 系统自带的sources.list是较长的配置文件,适合测试分页
cat /etc/apt/sources.list | more # | 管道符,将cat输出传给more分页
# 操作:按空格翻页,按q退出分页查看
3.cat 进阶用法(创建 / 编辑文件)
a. 用重定向创建文件(单行 / 少量多行)
核心逻辑
cat > 文件名 读取终端输入,按 Ctrl+D 结束输入(内容写入文件,覆盖原有内容);cat >> 文件名 是追加模式(不覆盖原有内容)
实操步骤:
# 覆盖模式创建文件
cat > cat_new.txt # 执行后终端进入输入状态
# 输入:Hello Cat(按回车)
# 输入:Linux 文件操作(按回车)
# 按 Ctrl+D 结束输入
cat cat_new.txt # 验证内容,应显示两行输入的文字
# 追加模式添加内容
cat >> cat_new.txt # 进入追加输入状态
# 输入:这是追加的内容(按回车)
# 按 Ctrl+D 结束
cat cat_new.txt # 验证,能看到新增的第三行内容
b. 用 Here Document(EOF/END)创建多行文件(重点!)
核心逻辑
解决 “逐行输入 + Ctrl+D” 的麻烦,用 EOF/END 作为结束标记(标记可自定义,需前后一致),适合写多行脚本 / 配置。
语法格式:
# 覆盖模式:>
cat > 文件名 << 结束标记
第一行内容
第二行内容
...
结束标记 # 必须顶行写,无空格、无缩进!
# 追加模式:>>
cat >> 文件名 << 结束标记
追加的第一行
追加的第二行
结束标记
实操步骤(覆盖模式,EOF 标记):
# 创建多行Shell脚本文件
cat > cat_eof.sh << EOF
#!/bin/bash
# 这是用cat+EOF创建的脚本
echo "当前目录:$(pwd)"
ls -l
EOF
cat cat_eof.sh # 验证内容,应和输入完全一致
# 预期输出:
# #!/bin/bash
# # 这是用cat+EOF创建的脚本
# echo "当前目录:$(pwd)"
# ls -l
4. 清空文件内容(快速清理)
实操步骤:
cat /dev/null > cat_new.txt # /dev/null 是空设备,代表“空内容”
cat cat_new.txt # 验证,输出为空,文件大小变为0(文件仍存在)
cat 常见问题提醒
a. 结束标记(EOF/END)必须顶格写,前后不能有空格 / 缩进,否则会失效(终端一直等待输入,按 Ctrl+C 退出);
b. 用 cat > 文件名 时,若文件已存在会直接覆盖,无任何提示,务必谨慎;
c. 查看二进制文件(如可执行程序)时,用 cat 会显示乱码,应改用 file 命令(如 file /bin/ls)。
二,进程管理(ps/top)【Process Status】
【/ˈprəʊses/】【进程】【/ˈsteɪtəs/】【状态,状况】【/tɑːp/】【顶端】
ps 是 “拍进程快照”(Process Status),top 是 “看资源 Top 榜”
知识点 1:ps 命令(静态查看进程)
核心结论:Linux 中所有运行的程序都是「进程」,ps 是 “静态查看进程快照”,top 是 “动态监控进程”,掌握它们能排查程序卡死、资源占用过高等问题(比如 ROS 节点异常时定位进程)。
1.基础用法:查看当前终端的进程
作用:列出当前系统中运行的进程(一次性快照,执行一次只显示当前状态),核心是通过参数筛选需要的进程。
ps # 仅显示当前终端下的进程(少量),输出示例:
# PID TTY TIME CMD
# 1234 pts/0 00:00:00 bash
# 5678 pts/0 00:00:00 ps
字段解释:
PID:进程 ID(唯一标识,杀进程 / 管理进程都靠它);
TTY:进程所属终端;
TIME:进程占用 CPU 的时间;
CMD:启动进程的命令。
2. 查看所有进程(最常用:ps -ef)
ps -ef # -e=显示所有进程,-f=全格式输出(含用户、PID、父进程等)
# 输出示例(关键字段):
# UID PID PPID C STIME TTY TIME CMD
# root 1 0 0 10:00 ? 00:00:02 /sbin/init
# 你的用户名 1234 1 0 10:01 pts/0 00:00:00 bash
新增字段:
UID:运行进程的用户;
PPID:父进程 ID(进程的 “上级”);
STIME:进程启动时间。
3. 过滤指定进程(结合 grep,排查特定程序)
# 需求:查看所有和bash相关的进程(排除grep自身)
ps -ef | grep bash | grep -v grep
# 解释:| 是管道符(把前一个命令的输出传给后一个),grep -v 排除包含grep的行
4. 查看进程的详细资源占用(ps aux)
ps aux # a=所有用户进程,u=显示用户和资源占用,x=显示无终端的进程
# 核心字段:%CPU(CPU占用率)、%MEM(内存占用率)、COMMAND(进程命令)
关键操作:杀死异常进程(配合 ps)
# 1. 先用ps找到要杀的进程PID(比如bash的PID是1234)
ps -ef | grep bash
# 2. 用kill命令终止进程(普通终止)
kill 1234
# 3. 强制终止(进程卡死时用,慎用!)
kill -9 1234 # -9=强制信号,直接杀死进程,无法恢复
知识点 2:top 命令(动态监控进程)
作用:实时、动态显示进程的资源占用情况(默认每 3 秒刷新一次),是排查 CPU / 内存占用过高的核心工具。
实操步骤(一步一敲)
1. 启动 top
top # 终端进入top界面,显示动态进程列表
A. 核心界面拆解(重点看前 5 行 + 进程列表)
第 1 行:系统整体状态(当前时间、运行时长、登录用户数、系统负载);
第 2 行:进程统计(总进程数、运行中 / 睡眠中进程数);
第 3 行:CPU 占用(% us = 用户进程占用、% sy = 系统进程占用、% id = 空闲 CPU);
第 4 行:内存占用(total = 总内存、used = 已用、free = 空闲);
第 5 行:交换分区占用(类似虚拟内存);
进程列表:和 ps 类似,新增 % CPU、% MEM 排序(默认按 % CPU 降序)。
B. top 常用交互快捷键(在 top 界面内按)
q:退出 top(最常用);
P:按 CPU 占用率降序排序;
M:按内存占用率降序排序;
k:输入 PID 杀死指定进程(不用退出 top);
1:显示所有 CPU 核心的占用情况(多核机器必备);
h:查看 top 帮助(所有快捷键说明)。
实用技巧:监控特定进程
top -p 1234 # 只监控PID=1234的进程(减少干扰)
三,软件源配置 + apt 包管理
核心结论:Ubuntu 用 apt 管理软件,「软件源」是软件的下载地址,配置国内源(如清华、阿里云)能大幅提升下载速度,apt 是安装 / 卸载 / 更新软件的核心命令。
知识点 1:软件源配置(新手优先改国内源)
为什么要改源?
Ubuntu 默认源在国外,下载软件慢且容易超时,国内源(清华、阿里云、中科大)是镜像,速度快。
操作步骤(一步一敲,Ubuntu 22.04 为例)
1. 备份原有源文件(重要!防止改错)
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
# 输入用户密码(输入时无回显,直接敲回车)
2. 编辑源文件(用 nano 编辑器,新手友好)(如果需要其它的我主页有)
sudo nano /etc/apt/sources.list
# 进入nano界面,操作说明:
# 1. 按Ctrl+A全选所有内容,按Delete删除;
# 2. 粘贴以下清华源(复制后在终端右键粘贴):
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# 3. 按Ctrl+O保存,按回车确认,按Ctrl+X退出nano。
3. 更新源缓存(使新源生效)
sudo apt update # 刷新软件源缓存,输出“Hit”“Get”表示正常
注意事项:
a. 不同 Ubuntu 版本源的 “代号” 不同:22.04=jammy,20.04=focal,18.04=bionic;
b. 改错源会导致 apt 无法更新,可恢复备份:sudo cp /etc/apt/sources.list.bak /etc/apt/sources.list。
sudo cp /etc/apt/sources.list.bak /etc/apt/sources.list
知识点 2:apt 包管理(核心命令)
基础认知:apt 是 Ubuntu 16.04 + 的推荐命令(替代旧的 apt-get),无需 sudo 的命令仅查看信息,修改操作需 sudo;
软件包名可通过 apt search 关键词 查找(如 apt search ros 找 ROS 相关包)。
常用用法(一步一敲)
1. 更新源缓存(改源 / 定期更新必做)
sudo apt update # 只更新缓存,不更新已安装软件
2. 升级已安装软件
sudo apt upgrade # 升级所有可更新的软件(会提示确认,输入y回车)
# 全量升级(含系统版本小更新):
sudo apt full-upgrade
3. 安装软件
# 安装单个软件(如安装tree工具,用于查看目录树)
sudo apt install tree
# 验证安装:
tree --version # 输出版本号表示安装成功
# 安装多个软件
sudo apt install tree htop # 同时安装tree和htop(htop是top的增强版)
4. 卸载软件
# 保留配置文件卸载
sudo apt remove tree
# 彻底卸载(删除配置文件)
sudo apt purge tree
5. 清理无用包(释放磁盘空间)
sudo apt autoremove # 删除依赖的无用包
sudo apt clean # 清理下载的软件包缓存
6. 查找软件包
apt search ros-noetic # 查找ROS Noetic相关包
apt show tree # 查看tree包的详细信息(版本、描述、依赖等)
常见问题:
安装时提示 “无法获得锁”:说明有其他 apt 进程在运行,关闭软件中心 / 等待几秒再试;
依赖报错:执行 sudo apt -f install 修复依赖。
四,.bashrc 文件 + 环境变量(核心配置)
知识点1:核心认知
1. .bashrc 是什么?
位置:家目录下的隐藏文件(路径 ~/.bashrc),以 . 开头,需 ls -a 才能看到;
作用:每次打开交互式 Bash 终端时,自动执行该文件中的命令,是配置 “终端个性化、环境变量、别名” 的核心文件;
适用场景:ROS 环境变量配置、自定义命令别名、默认终端参数设置(比如嵌入式板远程连接后自动加载环境)。
2. 环境变量是什么?
定义:系统 / 程序运行时的 “全局参数”(键值对形式,如 PATH=/usr/bin),用于告诉系统 “命令 / 程序在哪里”“程序运行的默认参数”;
常用环境变量:
PATH:系统查找可执行命令的路径(输入 ls 时,系统从 PATH 里找 ls 程序的位置);
HOME:当前用户的家目录(固定值 ~);
ROS_MASTER_URI:ROS 核心节点的地址(嵌入式开发必配);
LD_LIBRARY_PATH:动态库查找路径(嵌入式板运行程序常用)。
知识点2:.bashrc 文件操作(一步一敲)
1. 查看 .bashrc 文件
cd ~ # 回到家目录
ls -a # 能看到 .bashrc 文件名(隐藏文件)
cat ~/.bashrc # 查看文件内容(内容较多,可加 | more 分页:cat ~/.bashrc | more)
2. 编辑 .bashrc 文件(新手用 nano,友好)
nano ~/.bashrc # 打开编辑器,操作快捷键:
# 方向键:移动光标;Ctrl+O:保存;Ctrl+X:退出;Ctrl+K:删除行
3. 实操:给 .bashrc 加自定义内容(3 个常用场景)
场景 1:添加命令别名(简化长命令)
比如把 ls -l 简化为 ll(系统默认已有,但教你自定义)、把 cd ~/workspace 简化为 cdws:
# 1. 打开 .bashrc
nano ~/.bashrc
# 2. 光标移到文件最后一行,输入:
alias ll='ls -l' # 别名ll对应ls -l
alias cdws='cd ~/workspace' # 别名cdws对应切换到workspace目录
# 3. 按 Ctrl+O 保存,按回车确认文件名,按 Ctrl+X 退出
场景 2:添加环境变量(ROS 示例)
嵌入式板 / 树莓派运行 ROS 时,需配置 ROS 环境变量,写入 .bashrc 后每次打开终端自动加载:
# 1. 打开 .bashrc
nano ~/.bashrc
# 2. 最后一行添加(以ROS Noetic为例):
export ROS_MASTER_URI=http://localhost:11311 # ROS核心地址
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/catkin_ws/src # ROS包路径
# 解释:
# export:声明环境变量(全局生效);
# $ROS_PACKAGE_PATH:引用已有的环境变量值,冒号分隔新增路径;
# = 前后无空格(环境变量赋值核心规则!)
# 3. 保存退出(Ctrl+O → 回车 → Ctrl+X)
场景 3:添加终端启动提示(个性化)
nano ~/.bashrc
# 最后一行添加:
echo "欢迎使用嵌入式终端!当前用户:$USER,当前目录:$PWD"
# 保存退出
4. 让 .bashrc 修改生效(关键!)
若改错 .bashrc 导致终端报错(比如命令无法执行),用备份恢复:
# 1. 系统默认有 .bashrc 备份(~/.bashrc.bak),若无则先备份当前(错的)文件:
cp ~/.bashrc ~/.bashrc.error.bak
# 2. 恢复系统默认的 .bashrc(从 /etc/skel 复制,这是新用户的默认配置):
cp /etc/skel/.bashrc ~/.bashrc
# 3. 重新加载:
source ~/.bashrc
5. 恢复 .bashrc(改错后回滚,新手必学)
# 1. 系统默认有 .bashrc 备份(~/.bashrc.bak),若无则先备份当前(错的)文件:
cp ~/.bashrc ~/.bashrc.error.bak
# 2. 恢复系统默认的 .bashrc(从 /etc/skel 复制,这是新用户的默认配置):
cp /etc/skel/.bashrc ~/.bashrc
# 3. 重新加载:
source ~/.bashrc
知识点3:环境变量操作(一步一敲)
1. 查看环境变量
方式 1:查看单个环境变量(echo)
echo $PATH # 查看 PATH 变量(输出多个路径,冒号分隔)
echo $HOME # 输出 /home/你的用户名
echo $ROS_MASTER_URI # 若配置过,输出对应值;否则输出空
方式 2:查看所有环境变量(env)
env # 列出所有环境变量(内容多,可 | more 分页)
env | grep PATH # 过滤只看 PATH 相关变量
2. 临时设置环境变量(仅当前终端有效)
关闭终端后失效,适合临时测试:
# 示例:给 PATH 添加自定义脚本路径
export PATH=$PATH:~/my_scripts # 把 ~/my_scripts 加入命令查找路径
echo $PATH # 验证,末尾能看到 ~/my_scripts
# 此时在 ~/my_scripts 下的脚本,无需输完整路径就能执行
3. 永久设置环境变量(写入 .bashrc,核心!)
临时设置的变量关闭终端就丢,写入 .bashrc 才是永久生效:
# 示例:永久添加自定义脚本路径到 PATH
# 1. 打开 .bashrc
nano ~/.bashrc
# 2. 最后一行添加:
export PATH=$PATH:~/my_scripts
# 3. 保存退出,重新加载:
source ~/.bashrc
# 4. 验证(新开终端也能生效):
echo $PATH # 能看到 ~/my_scripts 路径
4. 删除 / 修改环境变量
方式 1:临时删除(当前终端)
unset ROS_MASTER_URI # 删除 ROS_MASTER_URI 变量
echo $ROS_MASTER_URI # 输出空,说明已删除
方式 2:永久修改 / 删除(编辑 .bashrc)
直接打开 .bashrc,删除对应 export 行,或修改值,然后 source ~/.bashrc 生效。
关键注意事项
a. 环境变量赋值时,= 前后绝对不能有空格(比如 export PATH = $PATH:~/test 会报错);
b. 修改 .bashrc 前务必备份:cp ~/.bashrc ~/.bashrc.bak,防止改错导致终端异常;
c. 嵌入式板(树莓派 / Jetson)的 .bashrc 配置和 Ubuntu 完全一致,远程 ssh 连接后修改即可;
d. ROS 环境变量配置后,重启终端 /source ~/.bashrc 才能运行 roscore/rosrun 命令。
更多推荐



所有评论(0)