Linux介绍1

编译器

VMware虚拟机与Ubuntu与LinuxOS

VMware虚拟机

虚拟出来的一个PC机,独立于Windows之外的虚拟操作系统。允许用户在单一的物理硬件上运行多个操作系统实例。

Ubuntu——LinuxOS

Ubuntu是Linux发行版之一,是基于Linux内核的一个完整操作系统,它不仅包含内核,还包括用户界面、应用程序和管理工具等。
位数——>影响到最大存储和处理速度。

为什么使用LinuxOS?

  • 嵌入式是以应用为中心,以计算机为基础,软硬件可裁剪;
    (裁剪,其分为两方面,软件裁剪与硬件裁剪,硬件裁剪例如引脚功能复用,软件裁剪就需要用到LinuxOS。
    为什么需要修改——在特定环境特定领域下,根据用户需要。)
  • Linux功能强大,代码开源,可裁剪,正贴合嵌入式需要;
  • Linux下一切皆文件。

目录结构

Windows目录结构:像倒置的森林——有盘符之分

Windows盘符目录


Linux目录结构:像一颗倒置的树

Linux目录结构

  • 根目录(/):顶层目录(所有路径都从它开始)
  • 绝对路径:从根目录开始的路径
  • 相对路径:相对于当前位置的路径
  • 家目录(~)(HOME)(工作目录)(主目录)

home是不是家目录?

home不是家目录,home之下是用户,可以有多个用户。而用户之下才是家目录。
当处于家目录之上,普通用户没有操作权限

Linux常用命令

终端

  • 打开终端
快捷键ctrl+alt+t:打开默认家目录路径的终端
快捷键ctrl+shift+t:打开一个和当前路径相同的终端
  • 控制终端
快捷键ctrl+shift+(+) 放大终端窗口
快捷键ctrl+(-) 缩小终端窗口
终端输creal/ctrl+l 清屏

命令行提示符与权限切换

权限切换

//普通——>超级用户
sudo su
sudo -i
//超级用户——>普通用户
su - 用户名

命令

命令 [选项] [参数]

注意:

  1. [ ]括起来的都可以省略 选项:命令的拓展功能 参数:命令需要操作的对象
  2. 三者之间均要空格隔开

tip:

  1. tab:自动补全
  2. 上下箭头:查看历史命令
  3. pwd:显示当前所在的绝对路径*
  • ls命令
    显示当前路径文件
ls #显示当前路径文件
ls -l #显示当前路径下文件以及属性
ls -a #显示当前路径下文件(包括隐藏文件)
ls -la #显示所有文件属性

根据颜色区分文件:
蓝色: 文件夹
白色: 文件
绿色: 可执行文件
淡蓝色: 连接文件

  • mkdir命令
    创建文件夹
mkdir 文件夹名
mkdir -p 文件名/文件名/... #创建多级目录,也就是路径中包含多个层级的目录
  • touch命令
    创建空文件
touch 1.txt
  • rm命令
    删除文件/文件夹(一次可以删除多个)
rm 文件名
rm -r 文件夹名

rm -ri:删除文件夹并且会询问你是否要删除

  • rmdir命令
    删除空文件夹(一次可以删除多个)
rmdir 文件夹名

rmdir -r 文件夹/文件夹路径:删除空/非空文件夹

  • cd命令
    切换当前目录到其他地方
cd 		#直接回到家目录
cd .. 	#进入上一级目录
cd - 	#进入上一次操作的路径
cd 绝对路径/相对路径 	#进入绝对路径或者相对路径
  • cp命令
    复制文件或文件夹到目标路径下
cp 源文件 目标文件中
cp -r 源文件夹 目标文件夹

cp -r命令作用:用于递归复制目录及其内容到另一个位置

  • mv命令
    作用1:移动(移动指定的文件或文件夹到目标路径下)
mv 文件/文件夹 目标文件

作用2:重命名(将文件改名)

mv 原文件名 新文件名
  • cat与more
    cat命令作用:查看文档内容,适合查看比较短的文档
cat 文件名

more命令作用:查看文档内容,适合查看比较长的文档

more 文件名

在查看比较长的文档时

  1. 按 Space(空格) 向下走一页
  2. 按 Enter(回车) 向下走一行
  3. 按Q(q)退出
  4. 按B(b)向上走一页
  • 关机重启
#sudo表示以root用户的权限去运行
linux@ubuntu:~$ sudo reboot #重启
linux@ubuntu:~$ sudo shutdown -h +30 #30分钟之后关机
linux@ubuntu:~$ sudo shutdown -h now #现在关机

Vim编辑器

vim 文件名 #(如果此文件存在,就进入文件并进行编辑,如果不存在,则创建文件并进入编辑)

三种模式:

  1. 命令行模式(刚进入)
  2. 插入模式
  3. 底行模式

三种模式如何切换?
命令行模式—>插入模式 i
插入模式—>命令行模式 esc
命令行模式—>底行模式 shift+:
底行模式—>命令行模式 esc

底行模式下:
w:保存
q:退出
wq:保存并退出
q!:强制退出
wq!:保存并强制退出
set nu:显示行号
set nonu:取消显示行号

命令行模式下:
yy:复制
dd:剪切(剪切后不粘贴则为删除)
p:粘贴
nyy:复制n行
ndd:删除n行
u:撤销
ctrl+r:反撤销

gcc编译器

gcc hello.c

这种方式下默认生成的可执行文件名字为 a.out
执行可执行文件

./a.out

编译为指定文件名方法

gcc hello.c -o hello

执行可执行文件

./hello

GDB调试工具

安装GDB

sudo apt-get install gdb

1.编译时加参数

gcc -g hello.c -o hello

2.启动GDB

gdb hello

3.设置断点

break 10 #在第10行打断点
break hello.c:10
break main #打断点在main函数
b

4.运行

run
r

5.查看变量

print var
p

6.单步执行

step #进入函数内部
s
next #不进入函数内部
n

7.继续执行
跳出循环继续执行,直到下一个断点

continue
c

8.观察点
设置观察点观察变量值的改变

watch var

9.修改变量的值

  • 在调试中修改变量的值
set variable_name = value

10.删除断点和观察点

info watchpoints #先列出所有的观察点,以便于查到想要删除的观察点的编号
delete <watchpoint-name> #根据编号删除

11.退出

quit
q
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值