学习目标:
嵌入式开发–Linux基础
学习内容:
- 虚拟机操作
- Linux常用命令
- Linux系统的目录结构
- C语言开发步骤
学习时间:
2024年4月15日
学习产出:
1.虚拟机操作
1.1了解虚拟机,使用 vmware workstation,打开虚拟机,选择Ubuntu 64 位.vmx,点击开启此虚拟机。
1.2Linux系统有许多快捷键可以代替鼠标操作,在一些无法使用鼠标的Linux情况可使用。
ctrl + alt + t 打开终端
ctrl + shift + ‘+’ 放大字体
ctrl + ‘-’ 缩小字体
ctrl + alt + 回车 全屏显示/取消全屏显示
虚拟机窗口化显示:调节界面大小、查看 -> 立即适应客户机
1.3一般可选择挂起虚拟机,需要关机时,先关闭Ubuntu,再关闭mware workstation。
2.Linux常用命令
2.1 ls
查看当前目录下的文件
蓝色 目录文件(文件夹)
白色 普通文件(文本文件):图片、音视频、压缩包
ls -a
查看当前目录下所有的文件(包括隐藏文件:文件名以.开头)
. :当前目录
… :上一级目录
ls -l
查看文件的详细信息
文件类型 文件权限 文件存储 文件所属的用户和组 文件大小 修改时间 文件名
2.2 touch/rm
创建/删除文件
2.3 mkdir/rmdir
创建/删除空目录文件夹
rm -rf
删除非空目录文件
示例:
rm dirname -rf
rm -rf dirname
2.4 cd
进入对应的存储目录
切换当前工作目录
示例:
cd 目录文件名
cd … 进入当前目录的上一级目录
cd ~ 进入当前登录用户的家目录
cd 进入当前登录用户的家目录
cd / 进入根目录
cd . 进入当前目录
2.5 cp
复制对应的文件
文件拷贝
cp filename -rf/cp -rf filename
复制对应的文件夹
2.6 mv
移动对应的文件
将源文件移动到目的路径下
mv 源文件/目录路径 目的路径
mv可以用来修改文件名
mv oldname newname
3.Linux系统的目录结构
3.1 根目录
目录的源头
Linux系统最顶层目录: / (根目录)
根目录下都是系统文件(按照功能划分存储)
1.bin 存放二进制文件(可执行程序)的目录
2.etc 存放配置文件的目录
3.lib 存放库文件的目录
4.var 存放日志信息
5.boot 存放启动代码
6.dev 存放设备文件目录
7.mnt 存放挂载文件目录
8.proc 存放进程信息的目录
9.root 超级用户的家目录
10.home 存放普通用户家目录的目录
3.2 家目录
家目录有登录的Linux系统的账户
家目录:每个用户都会有一个家目录,用户可以在家目录下创建、删除、执行文件权限不受限制
3.3 绝对路径,相对路径
相对路径:登录用户不同,所在目录不同,相同路径会拥有不同的含义
绝对路径:登录用户不同,所在目录不同,绝对路径不会拥有不同含义
Desktop 当前目录下的Desktop 相对路径
./Desktop 当前目录下的Desktop 相对路径
…/Desktop 当前目录的上一级目录下的Desktop 相对路径
~/Desktop 家目录下的Desktop 相对路径
/home/linux/Desktop 根目录下home下linux下Desktop目录 绝对路径
4.C语言开发步骤
4.1 vim filename.c
vim为编辑器,自动生成(不存在)打开对应的文件,开始编写
4.2 点击i键插入
即可进行输入
4.3 编写C语言
根据要求可编写内容,本次编写为打印Hellow World.
include <stdio.h>
int main(void)
{
printf("Hellow World\n");
return 0;
}
4.4 ESC :wq
点击ESC退出,然后输入:wq为保存并退出。
q!:不保存退出。
q:若无改变直接退出
输入:wq 保存并且退出
:q! 不保存强制退出
:q 直接退出
:wq! 强制保存退出
:w 只保存不退出
4.5 gcc filename.c
编译先前编写的文件内容,默认生成a.out。
也可指定生成名称,如下
gcc filename.c -o newname
*gcc编译器:
将C语言代码编译成二进制代码
gcc filename.c
编译filename.c程序生成a.out可执行程序
gcc filename.c -o filename
编译filename.c程序指定生成filename可执行程序
语法问题:
1.error 错误 生成可执行程序失败
2.warnning 告警 生成可执行程序成功,但有可能运行会出错*
4.6./a.out
通过操作台直接打开生成的文件
./文件名