Linux简单介绍

Linux简单介绍

编译器

VMware虚拟机

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

Ubuntu------LinuxOS

ubuntu是基于Linux内核 的一个完整的操作系统 ,是Linux发行的版本之一;

不仅包括内核,还包括用户界面、应用程序和管理工具等
位数会影响最大存储和处理速度

为什么使用LinuxOS?
  • 嵌入式以应用为中心,以计算机技术为基础,软硬件可剪裁
  • Linux代码开源,也就是可剪裁,贴合嵌入式需要
  • Linux下一切皆文件

目录结构

Windows目录结构

  • Windows目录结构有盘符之分(像倒置的森林)

Linux操作系统

  • 一切皆文件(倒置的一棵树)
  • 根目录(/):顶层目录
  • 绝对路径:一切从根目录开始的路径(/home/linux64/Desktop)
    第一个斜杠为根目录,除了第一个斜杆以外的所有斜杠都表示分隔符
  • 相对路径:从当前位置开始的路径
  • 家目录(~)
home是不是家目录?
  • home不是家目录,home之下是用户,并且可以有多个用户,用户之下才是家目录
  • 处于家目录之上,普通用户没有操作权限

Linux常用命令

终端

打开终端

c 复制代码
快捷键Ctrl+alt+t:打开默认家目录路径的终端
快捷键ctrl+shift+n:打开和当前路径相同的终端  

控制终端

c 复制代码
Ctrl+shift+(+):放大终端窗口和字体
ctrl+(-):缩小终端窗口和字体
终端输入clear或快捷键ctrl+l:清屏

命令行提示符与权限切换

  • 切换普通用户权限和超级用户权限
c 复制代码
//普通($)------------超级(#)
sudo  -i
或sudo su
//超级(#)------------普通($)
su - 用户名

用户名@主机名:当前路径$

命令

命令格式

c 复制代码
命令 [选项] [参数]

注意:

  • \]括起来的可以省略 选项:命令的拓展功能; 参数命令需要操作的对象

tab 作用:自动补全
  • 按一次
  • 按两次
上下箭头

上下箭头作用----查看历史命令

pwd命令

显示当前所在的绝对路径

ls命令
  • ls命令作用:显示当前路径下的文件
  • 所有文件根据颜色分:
    蓝色:文件夹;
    白色:文件
    绿色:可执行文件
    淡蓝色:链接文件
c 复制代码
 man ls //查看ls的帮助文档
 ls --help //打开ls的帮助文档

直接使用

c 复制代码
ls //显示当前目录下的文件和文件夹

显示指定路径下的文件

c 复制代码
ls / //  /命令用于列出根目录下的所有文件
ls -l //显示当前路径下的文件以及属性
c 复制代码
ls -a //显示当前路径下的所有文件(包含隐藏文件),(以.开头的是隐藏文件)(隐藏文件及文件夹是用来保护敏感信息或避免用户误操作的机制)
ls -la //显示所有文件的属性
ls -la 路径 //显示指定路径下的所有文件的属性
mkdir命令
  • mkdir命令的作用:创建文件夹(一次可以创建多个)
c 复制代码
 mkdir 文件夹名
c 复制代码
mkdir -p 文件夹名/文件夹名/...   //可以创建多级目录,多个层级
touch命令
  • 作用:创建空文件(一次可以创建多个)
c 复制代码
touch 文件名
rm命令
  • 作用:删除文件/文件夹(一次可以删除多个)
c 复制代码
rm 文件名
rm -r 文件夹名
rm -ri 文件夹名   //删除文件夹并且会询问你是否要删除
rmdir命令
  • rmdir作用:删除空文件(一次可以删除多个)
c 复制代码
rmdir 文件夹名
cd命令
  • cd作用:切换当前目录到其他目录
c 复制代码
cd  //直接回到家目录
cd .. //进入上一级目录
cd - //进入上一次操作的路径
cd 绝对路径/相对路径  //进入绝对路径或者相对路径
cp的命令
  • 作用:复制文件或文件夹到目标路径下

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

c 复制代码
cp 源文件 目标文件
cp -r 源文件夹  目标文件
mv命令
  • 作用1:移动(移动指定的文件或文件夹到目标路径下)
c 复制代码
mv  文件/文件夹  目标文件
  • 作用2:重命名(将文件改名)
c 复制代码
mv 原文件名 新文件名
cat与more
  • cat作用:查看文档内容,适合查看比较短的文档
c 复制代码
cat 文件名
  • more作用:查看文档内容,适合较长文档
c 复制代码
more 文件名

查看较长文档:

  1. 按space(空格)向下走一页
  2. 按b向上走一页
  3. 按enter(回车)向下走一行
  4. 按q退出
关机重启
c 复制代码
sudo reboot  //重启
sudo shutdown -h +30  //30分钟之后关机
sudo shutdown -h now  //现在关机

Vim编辑器

c 复制代码
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编译器

编译:编译为计算机能够识别的二进制文件

法一:

c 复制代码
gcc hello.c   //这种方式默认生成可执行文件名为a.out

执行可执行文件

c 复制代码
./a.out

法二

c 复制代码
gcc hello.c -o hello

这种方式生成的可执行文件的名字为指定名字hello

执行可执行文件

c 复制代码
./hello

GDB调试工具

调试步骤

  1. 编译的时候加参数
c 复制代码
gcc -g error.c -o error
  1. 设置断点
c 复制代码
b main
b 行号

3.gdb加可执行文件名字

c 复制代码
gdb error
  1. 运行
c 复制代码
r 运行

其他参数

c 复制代码
n(next)		不进入子函数
s(step)		进入子函数
p(printf) a(要打印的值)		打印出来某一个指定值
c(continue)		可以直接跳出循坏,进入下一步
q(quit)		退出

GDB调试详解

相关推荐
M4K01 小时前
Linux百度网盘优化三板斧
linux
好奇的菜鸟2 小时前
如何在 Ubuntu 24.04 (Noble) 上使用阿里源
linux·运维·ubuntu
bcbobo21cn2 小时前
初步了解Linux etc/profile文件
linux·运维·服务器·shell·profile
望获linux2 小时前
【实时Linux实战系列】CPU 隔离与屏蔽技术
java·linux·运维·服务器·操作系统·开源软件·嵌入式软件
0wioiw03 小时前
C#基础(项目结构和编译运行)
linux·运维·服务器
2401_873587824 小时前
Linux常见指令以及权限理解
linux·运维·服务器
Arthurmoo4 小时前
Linux系统之MySQL数据库基础
linux·数据库·mysql
李洋-蛟龙腾飞公司4 小时前
HarmonyOS NEXT应用元服务常见列表操作分组吸顶场景
linux·运维·windows
链上Sniper4 小时前
智能合约状态快照技术:实现 EVM 状态的快速同步与回滚
java·大数据·linux·运维·web3·区块链·智能合约
晨曦丿5 小时前
双11服务器
linux·服务器·网络