今天是嵌入式学习的第一天。在今天,我安装了Linux环境,VMware和ubuntu。
了解到现在常用的操作系统大多都与Linux存在联系,例如移动端的安卓,鸿蒙操作系统都是由Linux作为基石发展的。
我成功的在VMware打开虚拟机,并进入了它的终端。在终端里面,可以通过输入命令来操作虚拟机,比如在桌面下创建一个1.txt文件,命令是:touch 1.txt。按下回车后,系统执行命令。这时候,我回到桌面,可以看见一个1.txt文件。这是一种很神奇的感觉,就像是手里拿着一本神奇的笔记本,在这上面写的事都会发生。
我还了解到Windows和Linux的一些区别,例如一个文件在Windows下可以通过一个路径找到它,这个路径在Linux中称为目录。linux的目录就相当于 Windows的文件夹。而且两者的存储方式也有区别,Windows中通过盘符来分开存储,例如C盘,D盘。而Linux中则是由一个根目录(/)作为所有文件的起点,在根目录下可以找到Linux中的所有文件,Linux中一切皆文件。这时,可以使用pwd命令来查看当前目录。
为了使用好这本神奇的笔记,就得学会如何使用,因此,我还学习了Linux终端中的一些操作命令,包括它们的写法和用法。
1.pwd(Print Work Directory)
首先学习的指令就是pwd,这个指令可以查看当前我们所处的位置,即目录。用法就是直接输入pwd即可。
2.ls(list)
然后学习了ls指令,当直接使用时,可以查看当前目录下的内容。也可以 ls -l 使用,这时不仅可以查看当前目录下的内容,还可以查看这些文件的详细信息。也可以ls -l 文件名,这时查看的就是单个文件的信息了。
并且可以看到一个完整的Linux命令应该具有的结构:<命令> [选项] [参数]。选项以 - 开头,且这三个部分在使用时,中间至少有一个空格作为分隔符。
3.cd(Change Directory)
cd指令的作用是切换目录,它的使用方法就是cd 目录名,这样就切换到了指定的目录下。若直接使用cd,则是回到家目录(/home/linux)。目录名有相对路径和绝对路径有种表示方法。
绝对路径:
形式上 以/开头
含义上 目录的参考起点是以 /(根目录作为参考起点)
相对路径 :
形式上 只要不是以/开头
含义上 目录的参考起点是以 当前位置 作为参考起点
还学习到一些特殊的目录:
~ // 就是家目录 /home/linux
. // 当前目录 cd .
.. // 上一级目录 cd ..
- // 上一次操作的目录 cd -
4.touch
创建空的文件。使用方法为touch 文件名。并且由于普通用户的权限只在家目录下最大,如果我们想要在根目录下创建空文件,需要超级用户的权限,我们可以在命令行前加上 sudo,这样我们就短暂的具有了超级用户的权限。
5.mkdir
既然可以创建文件,那必须得有创建文件夹的魔法。mkdir,它的作用就是创建空的文件夹,也是目录。使用方法,mkdir 目录名,如果想要一次创建多个目录mkdir 目录名 目录名,那就像建多少建多少吧。如果还想贪心地创建多级目录该怎么办呢,记住这个指令吧,mkdir 1/2/3 -p (-p (parent) 表示多级目录)。
6.cp (copy)
它的作用是拷贝,使用方法是 cp 源文件 目标文件,如果是拷贝文件夹则需要加上-r,如果目标文件夹已经存在则会拷贝到目标文件夹中。两者都可以加上路径。
7.mv(move)
它的作用是移动文件,使用方法是 mv 源文件 目标文件,它与cp有一个显著的区别就是,cp后源文件还在,但是mv后源文件不在了。如果在当前目录下使用mv,可以当作文件重命名。
8.rm(remove)
它用来删除文件。rm 文件名。当删除文件夹时,需要加上-r。
接着我学习了Linux下的编程流程。分为四步:1.编写代码(使用vi/vim)2.编译(gcc)3.运行(./a.out)4.调试代码(gdb)。
vi/vim工具
使用vi指令打开C文件,按i键进入插入模式编写代码,ESC键退出插入模式回到默认的命令模式,输入shift+:进入底行模式,输入wq保存并退出。
在vi中有一些常用指令,在命令模式下,按yy可以复制一行,Nyy(N为数字)可以复制N行,p粘贴一次,Np粘贴N次,dd删除(剪切)一行,Ndd删除N行,x删除某个字符,u撤销上个动作,CTRL+r反撤销。
9.cat
可以查看某个文件的具体内容,内容会打印在终端上。使用方法 cat 文件名。
总结
以上就是第一天学习的内容了,通过今天的学习,我收获颇丰。学习到了Linux中常用指令,了解了Linux中的一些底层逻辑。应该是为接下来的学习打下了良好的基础。