进行嵌入式开发,依赖的是 linux(Linux is not unix) 系统,主要以终端指令为主
linux也有图形化界面,由于嵌入式编程一般只将程序移植到开发板中,无需图形化界
课程前期,需要一直使用linux系统,做到从windows向linux的转换
放大终端 ctrl shift +
缩小终端 ctrl -
清屏 ctrl L
历史命令 上下箭头
用户名:hq whoami
主机名:Ubuntu hostname
:$中间位置 当前路径 默认在家目录~
查看当前路径:pwd
绝对路径:从根目录开始逐层向下查找 /home/hq/a/b/c
相对路径:以当前位置为参照
$:普通用户
root:超级用户
补充:Linux中一切皆文件
其中有两大特殊位置:
根目录:/
家目录:/home/hq ~
文件夹:mkdir 文件夹名字
文件:touch 文件名.后缀
相同路径下:
不能新建同名文件夹;会报错
文件:更新文件时间戳
相同路径下,同时新建多个文件/文件夹: 名字中间用空格隔开:
ls 查看当前路径下所有内容(文件名)
ls -a 查看当前路径下所有内容,包括隐藏内容
ls -l 查看当前路径下所有内容de详细信息
扩展:ls -l test.c 查看test.c文件的详细信息
-rw-rw-r-- 1 hq hq 0 7月 1 10:52 file1.c
文件类型 权限 链接数 用户名 组名 大小 修改时间 文件名
第一个字符:文件类型7种 bcd-lsp
b:块设备文件 /dev
c:字符设备文件
d:目录文件 文件夹
-:普通文件 .c .h .txt
l:链接文件 <LinuxC高级>
s:套接字文件 <网络编程>
p:管道文件 <IO>
rw-rw-r-- 文件权限 三个一组 共9个
rwx:可读可写可执行 rw-:可读可写不可执行
rwx rwx rwx
自己 组内 其他
权限值:r:4 w:2 x:1 -:0
修改文件/文件夹权限:
chmod 777 file1.c
rw- rw-r-- 664
文件: cp 要复制的文件 目标地址
文件夹:cp -r 要复制的文件夹 目标地址
cp和mv区别:
cp之后源文件还在;mv之后源文件不在
重命名:cp -r 要复制的文件夹 目标地址/新名字
使用cp重命名,源文件还在
文件: rm 文件名
文件夹:rm -r 文件夹名字
-f 强制删除
扩展:rmdir 只能删除空目录
打开终端
- 直接点击
- ctrl shift n 打开终端,路径在当前文件夹
- ctrl alt t 家目录
关闭终端
- 直接点击
- ctrl d
- exit
复制 yy nyy(光标选中y n:行数 复制几行)
删除(剪切) dd ndd
粘贴 p
撤销 u
反撤 ctrl r
光标移动首行 gg
光标移动最后一行首行 G
光标移动行首 0
光标移动行尾 $
指定行复制 5,10y 复制5-10行
指定行删除 5,10d
保存 w
退出 q
保存并退出 wq
强制 !
vsp 分屏本文件
vsp 文件名 分屏打开另外一个文件
查找 /找的东西
替换 s/a1/a2 光标所在行的第一个a1替换成a2
s/a1/a2/g 光标所在行的所有a1替换成a2
%s/a1/a2/g 改变全文
1,$s/a1/a2/g 改变全文
设置行号 set nu
取消 set nonu
取消高亮 nohl