【C语言】必备Linux命令和C语言基础

🌟博主主页:我是一只海绵派大星

📚专栏分类:嵌入式笔记

❤️感谢大家点赞👍收藏⭐评论✍️

目录

一、文件和目录相关命令

Linux 的文件系统结构

文件系统层次结构标准FHS 

pwd命令 

ls 列目录内容

文件的权限 

 cd 改变目录

查看文件内容 

cp 复制 

mv 移动 

创建和删除文件 

创建和删除目录 

二、vi编辑器的使用 

vi编辑器的使用

vi模式切换命令 

​编辑 vi拷贝与粘贴命令

vi保存和退出命令 

​编辑vi光标命令 

vi的查找命令 

vi替换命令 

vi复制和剪切命令 

三、程序的编译和调试 

gcc编译器


一、文件和目录相关命令

Linux 的文件系统结构

文件系统层次结构标准FHS 

  • / bin    :bin是二进制(binary)英文缩写。
  • / boot  :存放的都是系统启动时要用到的程序。
  • / dev    :包含了所有Linux系统中使用的外部设备。
  • / etc     :存放了系统管理时要用到的各种配置文件和子目录。
  • / lib      :存放系统动态连接共享库的。
  • / home:普通用户的主目录
  • / root   :根用户(超级用户)的主目录    

  ......

pwd命令 

pwd命令用于显示用户在文件系统中的当前位置,该命令没有任何选项和参数,命令执行结果显示为绝对路径名。

linux@ubuntu:~$ pwd

/home/linux

ls 列目录内容

ls是一个在 Unix 和 Linux 系统中用于列出目录内容的命令。当你在终端中输入 ls 并按回车键时,它会显示当前目录中的所有文件和文件夹。

 ls [options] [files_or_dirs]

Example:    

  • ls -a    

 ls -a是一个在 Unix 和 Linux 系统中用于列出目录中所有文件和文件夹的命令,包括隐藏文件(以.开头的文件)。当你在终端中输入 ls -a并按回车键时,它会显示当前目录中的所有文件和文件夹,包括隐藏文件。

  • ls -l    

ls -l   是一个在 Unix 和 Linux 系统中用于以长格式列出目录中的文件和文件夹的命令。长格式包括文件权限、所有者、大小等详细信息。

  • ls -R

ls -R 是一个在 Unix 和 Linux 系统中用于递归地列出目录中的文件和文件夹的命令。这意味着它将列出当前目录及其所有子目录中的文件和文件夹。

文件的权限 

权限:   用户(创建者  同组用户  其它用户)

权限类型   应用于目录      应用于任何其他类型的文件
读(r)授予读取目录或子目录内容的权限授予查看文件的权限
写(w)授予创建、修改或删除文件或子目录的权限授予写入权限,允许修改文件
执行(x)授予进入目录的权限允许用户运行程序
-无权限无权限

 cd 改变目录

查看文件内容 

Cat

  • -s 多个空行合并成一个空行显示        
  • -b 加行号显示
  • nl 加行号

head

-n 文件名(前n行,默认10)

tail

-n 文件名(后n行,默认10) 

cp 复制 

  • cp [options] file destination

mv 移动 

在 Linux 系统中,mv 命令是一个用于移动或重命名文件和目录的命令行实用程序。 

创建和删除文件 

touch – 创建或更新时间戳

rm – 删除文件

Usage: rm [options] <file>...

Example:

  • rm -i file

在 Linux 系统中用于删除文件的命令行实用程序。在这个命令中,-i 选项表示“交互式”,它会在删除文件之前提示用户确认。

  • rm -r directory 

在 Linux 系统中用于删除目录及其内容的命令行实用程序。在这个命令中,-r 选项表示“递归”,它会删除指定目录及其所有子目录和文件

创建和删除目录 

  • mkdir  -p

在 Linux 系统中用于创建目录的命令行实用程序。在这个命令中,-p 选项表示“父目录”,它会在创建目录时自动创建所需的父目录。

  • rm -r

在 Linux 系统中用于删除目录及其内容的命令行实用程序。在这个命令中,-r 选项表示“递归”,它会删除指定目录及其所有子目录和文件。

二、vi编辑器的使用 

vi编辑器的使用

vi有以下三种模式

  • 命令行模式

用户在用vi编辑文件时,最初进入的为该模式。可以进行复制、粘贴等操作。

  • 插入模式

进行文件编辑,按ESC键可以回到命令行模式。

  • 底行模式

光标位于屏幕的底行。可以进行文件的保存、退出、查找、替换、列出行号等 

vi模式切换命令 

 vi拷贝与粘贴命令

 

vi保存和退出命令 

vi光标命令 

vi的查找命令 

vi替换命令 

利用:s 命令可以实现字符串的替换。

  • :s/str1/str2/
  • :s/str1/str2/g
  • :.,$ s/str1/str2/g   g全部替换(默认换第1个)
  • :1,$ s/str1/str2/g
  • :%s/str1/str2/g 

vi复制和剪切命令 

  • y0-将光标至行首的字符拷入剪贴板
  • y$-将光标至行尾的字符拷入剪贴板
  • d0-将光标至行首的字符剪切入剪贴板
  • d$-将光标至行尾的字符剪切入剪贴板
  • range y-块复制
  • range d-块剪切 

三、程序的编译和调试 

gcc编译器

gcc(GNU Compiler)是GNU推出的多平台编译器,可将C、C++源程序编译连接成可执行文件,支持以下后缀:

  • .c                 c语言源代码
  • .h        程序所包含的头文件     
  • .i        已经预处理过的C源代码文件
  • .s        汇编语言源代码文件
  • .o        编译后的目标文件

🎁结语: 

本次精彩内容已圆满结束!希望各位读者在阅读过程中能够收获满满。在此,特别感谢各位读者的支持与三连赞。如果文章中存在任何问题或不足之处,欢迎在评论区留言,大星必定会认真对待并加以改进,以便为大家呈现更优质的文章。你们的支持与鼓励,将是博主不断前进的最大动力。再次感谢大家的陪伴与支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/630656.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

[董晓算法]搜索相关题目及模板

前言&#xff1a; 本系列是学习了董晓老师所讲的知识点做的笔记 董晓算法的个人空间-董晓算法个人主页-哔哩哔哩视频 (bilibili.com) 动态规划系列&#xff08;还没学完&#xff09; 【董晓算法】动态规划之线性DP问题-CSDN博客 【董晓算法】动态规划之背包DP问题&#xff…

NSSCTF | [SWPUCTF 2021 新生赛]ez_unserialize

打开题目&#xff0c;发现是一个GIF动图页面&#xff0c;什么都没有。我们来查看一下源代码&#xff0c;看看有没有什么发现 其实只要足够了解网站的构成&#xff0c;看到绿色的注释字样就能知道它这里在提示robots.txt文件。 但是对于小白来说&#xff0c;也不知道它是什么&a…

高效稳定,AH1515-15V转12V8A稳压芯片成为各种设备首选

高效稳定&#xff0c;AH1515 15V转12V稳压芯片成为各种设备首选 随着科技的不断发展&#xff0c;各种电子设备对电源的要求越来越高&#xff0c;尤其是电压稳定性和电流输出能力。为了解决这一问题&#xff0c;我国一款名为AH1515的稳压芯片应运而生&#xff0c;凭借其优异的性…

win11家庭中文版安装docker,报错 Docker Engine stopped

先引一下这位博主的链接超详细Windows11家庭中文版系统安装Docker-20230401_windows11安装docker-CSDN博客&#xff0c;我到前五步(跳出页面重启)和博主都是一样的&#xff0c;但是第六步我并没有报错&#xff0c;直接跳出docker界面 记录一下我的解决办法&#xff0c;首先按照…

[链表专题]力扣141, 142

1. 力扣141 : 环形链表 题 : 给你一个链表的头节点 head &#xff0c;判断链表中是否有环。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测系统内部使用整数 pos 来表示链表尾…

2024042001-计算机网络 - 物理层

计算机网络 - 物理层 计算机网络 - 物理层 通信方式带通调制 通信方式 根据信息在传输线上的传送方向&#xff0c;分为以下三种通信方式&#xff1a; 单工通信&#xff1a;单向传输半双工通信&#xff1a;双向交替传输全双工通信&#xff1a;双向同时传输 带通调制 模拟信号…

深度盘点解析一家公司的PMO的定位与发展规划

对于一家公司的PMO(项目管理办公室)的定位与发展规划,今天从以下几个方面进行深度盘点和解析,具体如下: 一、PMO的定位 1. 战略与推手:PMO是持续提升组织项目管理水平,实现组织所有项目成功的重要推手。它站在公司战略的高度,从全局视角出发,对公司内部的项目进行统一…

使用高防IP是应对网络安全的重要措施

使用高防IP&#xff08;High Defense IP&#xff09;在现代网络环境中显得尤为重要&#xff0c;这主要源于以下几个方面的原因&#xff1a; 一、网络安全形势严峻 随着互联网的快速发展&#xff0c;网络安全问题日益突出。各种网络攻击手段层出不穷&#xff0c;如分布式拒绝服…

结合小波变换的遥感语义分割网络,融合频域和空间域特征提升分割效果

题目:SFFNet: A Wavelet-Based Spatial and Frequency Domain Fusion Network for Remote Sensing Segmentation 论文:http://arxiv.org/abs/2405.01992 代码:https://github.com/yysdck/SFFNet 年份:2024 创新点 两阶段网络SFFNet:网络首先使用空间方法提取特征,以保…

论:即时战略RTS游戏的小地图采用 自下而上的汇报式 还是 自上而下的查找式?

关键词&#xff1a;RTS 小地图 游戏设计 思路 卫星 位置映射 阵营 更新 汇报 询问 UE4 UE5 Unreal Engine 前言 你是否想过类似红色警戒的战略小地图的要素是采用何种方式更新数据的。大量数据实时更新&#xff0c;考虑频率&#xff0c;运行效率&#xff0c;开发中如何选型&a…

「每日跟读」英语常用句型公式 第15篇

「每日跟读」英语常用句型公式 第15篇 1. It’s only logical that __ 合理的做法/结论是__ It’s only logical that we should take a break &#xff08;合理的做法是我们应该休息一下&#xff09; It’s only logical that we work hard to make money&#xff08;合理…

SQL注入漏洞常用绕过方法

SQL注入漏洞 漏洞描述 Web 程序代码中对于用户提交的参数未做过滤就直接放到 SQL 语句中执行&#xff0c;导致参数中的特殊字符打破了原有的SQL 语句逻辑&#xff0c;黑客可以利用该漏洞执行任意 SQL 语句&#xff0c;如查询数据、下载数据、写入webshell 、执行系统命令以及…

详细分析Vue3中的ref(附Demo)

目录 前言1. 基本知识2. Demo 前言 由于新项目涉及Vue3&#xff0c;本着探究问题的本质研究所不会的疑问 1. 基本知识 ref 是 Vue 3 中用于创建响应式数据的函数 接收一个初始值并返回一个包含了该值的响应式引用对象与 Vue 2.x 中的 data 属性不同&#xff0c;ref 返回的是…

【JAVA入门】Day05 - 面向对象

【JAVA入门】Day05 - 面向对象 文章目录 【JAVA入门】Day05 - 面向对象一、对象的设计和使用1.1 类和对象1.2 类的分类 二、封装三、private 关键字四、this 关键字五、构造方法六、JavaBean七、对象的内存图7.1 一个对象的内存图7.2 两个对象的内存图7.3 两个引用指向同一个对…

一种请求头引起的跨域问题记录(statusCode = 400/CORS)

问题表象 问题描述 当我们需要在接口的headers中添加一个自定义的变量的时候&#xff0c;前端的处理是直接在拦截器或者是接口配置的地方直接进行写&#xff0c;比如下面的这段比较基础的写法&#xff1a; $http({method: "post",url:constants.backend.SERVER_LOGIN…

函数栈帧的创建和销毁(详细理解)

&#x1f381;个人主页&#xff1a;我们的五年 &#x1f50d;系列专栏&#xff1a;c语言课程学习 &#x1f389;欢迎大家点赞&#x1f44d;评论&#x1f4dd;收藏⭐文章 目录 问题&#xff1a; 1.ebp&#xff0c;esp两个寄存器用来维护函数栈帧 2.main函数也一个函数&#…

QCustomPlot的了解

&#xff08;一&#xff09;QCustomPlot常见属性设置、多曲线绘制、动态曲线绘制、生成游标、矩形放大等功能实现-CSDN博客 关键代码&#xff1a; QT core gui printsupport 使用上面文章中的代码跑起来的程序效果图&#xff1a; 我的学习过程&#xff1a; 最开始初…

java 项目通用数据权限设计

文章目录 前言一、常见的数据权限二、通用数据权限设计思路通用权限示例(灵活配置最简单方式)两个表业务理解最终拼接出来的sql 为: 总结 前言 权限一般分为操作权限和数据权限 操作权限: 菜单,页面,按钮 数据权限: 能看到的数据,包括各种页面的数据范围 一、常见的数据权限 …

kafka用java收发消息

用java客户端代码来对kafka收发消息 具体代码如下 package com.cool.interesting.kafka;import org.apache.kafka.clients.consumer.ConsumerConfig; import org.apache.kafka.clients.consumer.ConsumerRecord; import org.apache.kafka.clients.consumer.ConsumerRecords; i…

MP3解码入门(基于libhelix)

主要参考资料: 【Arduino Linux】基于 Helix 解码库实现 MP3 音频播放: https://blog.csdn.net/weixin_42258222/article/details/122640413 libhelix-mp3: https://github.com/ultraembedded/libhelix-mp3/tree/master 目录 一、MP3文件二、MP3 解码库三、libhelix-mp3库3.1 …