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调试详解

相关推荐
Mr. Cao code8 分钟前
使用Tomcat Clustering和Redis Session Manager实现Session共享
java·linux·运维·redis·缓存·tomcat
zcz160712782111 分钟前
Linux 网络命令大全
linux·运维·网络
the sun3413 分钟前
Reactor设计模式及其在epoll中的应用
linux·运维·服务器·c++
喜欢你,还有大家16 分钟前
Linux笔记7——shell编程基础-1
linux·运维·笔记
运维成长记23 分钟前
Top 100 Linux Interview Questions and Answers
linux·运维·服务器
人工智能训练师1 小时前
openEuler系统中如何将docker安装在指定目录
linux·运维·服务器·人工智能·ubuntu
百里晴鸢1 小时前
别再混淆!Linux硬链接与软链接的5大关键区别
linux·操作系统
norsd2 小时前
Linux CentOS 安装 .net core 3.1
linux·centos·.netcore
想学c啊啊2 小时前
【Linux】信号(二):Linux原生线程库相关接口
linux·运维·服务器
刘一说2 小时前
CentOS 8开发测试环境:直接安装还是Docker更优?
linux·服务器·docker·centos