Linux 学习记录35(C高级篇)

这篇具有很好参考价值的文章主要介绍了Linux 学习记录35(C高级篇)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Linux 学习记录35(C高级篇)

Linux 学习记录35(C高级篇)

一、linux操作系统

1. 文件系统结构

Linux的文件系统结构是一个倒插树结构,所有的文件都从根目录出发
万物皆文件

所有的目录都是从根目录出发
1. etc:存放配置文件
2. bin:存放二进制文件
3. root:超级用户的家目录
4. home:所有用户的家目录信息

Linux 学习记录35(C高级篇)

2. 常见的linux的发型版本

1. ubunt
2. centos
3. redgat
4. openSUSE
5. arch
6. Deepin:国内

>1. linux发行版和内核版的区别

发行版:内核源码和桌面应用/软件结合
内核版:掌握在linus本人手里,进行维护,内核源码

二、网络配置

1. 查看网络是否连接

ping 网址/IP地址

例:
Linux 学习记录35(C高级篇)

2. 网络配置

>1. 保证虚拟机有桥接网络

选择桥接网络或
VMnet0

Linux 学习记录35(C高级篇)

>2. 设置桥接网络

给虚拟机添加桥接网络,如果没有vmnet0,添加网络
桥接到主机的网卡,一般自动是可以的,如果自动不行,去主机的网络属性中,找主机使用的网卡

Linux 学习记录35(C高级篇)
Linux 学习记录35(C高级篇)
选择DHCP或手动填充网络Linux 学习记录35(C高级篇)

>3. 重启网络服务

sudo service network-manager stop //暂停网络服务
sudo rm /var/lib/NetworkManager/NetworkManager.state //删除配置文件
sudo service network-manager start //重启网络服务
sudo vim /etc/NetworkManager/NetworkManager.conf //修改配置文件把配置文件中的false改成true

3. 三种网络模式

桥接:可以和外部设备通信,主机和Ubuntu分别使用不同的IP地址
NAT:可以和外部设备通信,主机和Ubuntu公用一个IP地址
主机:只能和主机通信

三、建立共享文件夹

建立主机和Ubuntu共享的文件夹,保证主机下有这个文件夹
Linux 学习记录35(C高级篇)
Linux 学习记录35(C高级篇)
共享文件夹的文件路径
Linux 学习记录35(C高级篇)

四、在线安装软件

1. 指令

apt-get

2. 更新软件源

更新到国内的软件源系统
只有sorces.list中的内容,才是能使用的软件源

1. 国内的软件源:163源、中科大源、阿里源、清华源

3. 修改软件源

>1. 虚拟机备份

Linux 学习记录35(C高级篇)

>2. 备份软件源

Linux 学习记录35(C高级篇)

>3. 修改软件源

Linux 学习记录35(C高级篇)
将原有的软件源删除,替换成要修改的软件源
点击此处前往获取清华软件源

>4. 同步软件源

将软件源中的内容同步

指令:

sudo apt-get update

Linux 学习记录35(C高级篇)

4. 下载指令

apt-get

	安装:install 软件名
	删除:remove 不完全删除(保留配置文件)
	卸载:remove --purge      (完全卸载软件)
	下载软件安装包
	:download 软件名(不安装软件)
	下载软件源码:source 源码名
	清空安装包:clean 清空默认下载位置的安装包 /var/cache/apt/archives

五、离线安装软件

在线安装会检查软件依赖,并主动安装依赖的软件
离线安装不会检查依赖,也不会安装以来软件

1. 软件包的命名规范

sl        _3.03-     17build2_      amd64         .deb
软件名    主版本号    修订版本号   支持64位架构    软件包后缀名
                               i386支持32位架构    .rpm

2. 离线安装指令

sudo dpkg -i 软件包名
要求:执行指令的路径下一定有软件包
卸载>> sudo dpkg -r 软件名
完全卸载>> sudo dpkg -P 软件名
查看软件安装列表>> sudo dpkg -l 软件名
查看安装路径>> sudo dpkg -L 软件名

六、文件相关命令

1. 重定向和追加

重定向符>、追加 >>

1、重定向符
cat 1.c > 2.c
1、如果2.c不存在,创建一个2.c,把1.c的内容重定向到2.c中
2、如果2.c不存在,创建一个2.c,把1.c的内容重定向到2.c中,覆盖掉原有的内容
echo 1 > 2.c
1、如果2.c不存在,创建一个2.c,把1重定向到2.c中
2、如果2.c不存在,创建一个2.c,把1重定向到2.c中,覆盖掉原有的内容


2、追加
cat 1.c >> 2.c
1、如果2.c不存在,创建一个2.c,把1.c的内容追加到2.c中
2、如果2.c不存在,创建一个2.c,把1.c的内容追加到2.c中,覆盖掉原有的内容
echo 1 >> 2.c
1、如果2.c不存在,创建一个2.c,把1追加到2.c中
2、如果2.c不存在,创建一个2.c,把1追加到2.c中,覆盖掉原有的内容

2. head 和 tail

head 文件名   ----->显示文件的前10行,不足就全部显示
head -n 文件名  ----->显示文件的前n行,不足就全部显示

tail 文件名   ----->显示文件的后10行,不足就全部显示
tail -n 文件名  ----->显示文件的后n行,不足就全部显示

3. 管道符

 指令1 | 指令2 | ···· | 指令n
把前一条指令的输出,当作后一条指令的输入

4. 查找文件 find

在指定路径下以文件名查找文件
"查找路径 find -name 文件名"

5. 查看文件信息 file

file 文件名

6. 查找字符串 grep

grep 字符串 文件名
-w:按单词查找
-R:递归查找
-i:不区分大小写
-n:显示行号

grep -w "^ubuntu" /etc/passwd ---->查找以ubuntu单词作为开头位置的所在行
grep -w "ubuntu$" /etc/passwd ---->查找以Ubuntu为结尾的所在行
grep -w "^ubuntu$" /etc/passwd --->查找开头和结尾都是Ubuntu的所在行

7. 截取字符串 cut

aut -d "分隔符" -f "域" 

8. 压缩和解压缩

压缩和解压缩后,源文件都不存在
只能对文件进行操作

>1. 压/解压缩 gzip

生成.gz后缀的文件
压缩:gzip 文件名 

解压缩:gunzip 文件名.gz

>2. 压/解压缩 xz

生成.xz后缀的文件
压缩:xz 文件名 

解压缩:unxz 文件名.xz

>3. 压/解压缩 bzip2

生成.bzip2后缀的文件
压缩:bzip2 文件名 

解压缩:bunzip2 文件名.bz2

>4. 压缩总结

1. 压缩效率:xz>bz2>gz
2. 压缩时间:xz>bz2>gz

适用场合:xz一般用于需要将文件归档(长时间不再去使用),gz一般用于即时的文件传输

七、归档和拆包

归档/打包和拆包后的源文件仍然存在

打包/归档

tar -cvf 打包后的文件名.tar
-c:显示指令执行的过程
-v:实现打包功能
-f:file 该参数后面必须更文件名
-j:打包后以.bz2的形式压缩,生成后的文件名必须以.bz2结尾
-J:打包后以.xz的形式压缩,生成后的文件名必须以.xz结尾
-z:打包后以.gz的形式压缩,生成后的文件名必须以.gz结尾

拆包 和 解压缩

tar -xvf 要拆包的文件名

思维导图

Linux 学习记录35(C高级篇)文章来源地址https://www.toymoban.com/news/detail-487432.html

到了这里,关于Linux 学习记录35(C高级篇)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux学习记录——사십사 高级IO(5)--- Epoll型服务器(2)(Reactor)

    本篇基于上篇代码继续改进,很长。关于Reactor的说明在后一篇 上面的代码在处理读事件时,用的request数组是临时的,如果有数据没读完,那么下次再来到这里,就没有这些数据了。所以得让每一个fd都有自己的缓冲区。建立一个Connection类,然后有一个map结构,让这个类和每

    2024年01月20日
    浏览(47)
  • Linux学习记录——사십사 高级IO(6)--- Epoll型服务器(3)(Reactor)

    看完前两篇再看这篇,本篇将会写Reactor EpollServer.hpp中创建一个函数HandlerRequest,用它来做Recver函数的数据处理,也就是数据分析。 改一下回调函数,不向外暴露Connection类。 Main.cc中就不需要两个函数,一个计算函数就可以 处理数据那里再加上最后的步骤 回到Recver函数,调用

    2024年01月20日
    浏览(38)
  • Linux学习记录——사십오 高级IO(6)--- Epoll型服务器(3)(Reactor)

    看完前两篇再看这篇,本篇将会写Reactor EpollServer.hpp中创建一个函数HandlerRequest,用它来做Recver函数的数据处理,也就是数据分析。 改一下回调函数,不向外暴露Connection类。 Main.cc中就不需要两个函数,一个计算函数就可以 处理数据那里再加上最后的步骤 回到Recver函数,调用

    2024年01月23日
    浏览(47)
  • Linux shell编程学习笔记35:seq

    在使用 for 循环语句时,我们经常使用到序列。比如: for i in 1 2 3 4 5 6 7 8 9 10; do echo \\\"$i * 2 = $(expr $i * 2)\\\";  done 其中的 1 2 3 4 5 6 7 8 9 10; 就是一个整数序列 。 为了方便我们使用数字序列,Linux提供了seq命令,这个命令是取自单词 sequence 的前3个字母。比如: for i in $(seq 1 10) ;

    2024年02月04日
    浏览(39)
  • openGauss学习笔记-35 openGauss 高级数据管理-ALTER TABLE语句

    修改表,包括修改表的定义、重命名表、重命名表中指定的列、重命名表的约束、设置表的所属模式、添加/更新多个列、打开/关闭行访问控制开关。 35.1 语法格式 在一张已经存在的表上添加列。 在一张已经存在的表上删除列。 修改表的字段类型。 为一张已经存在表的列增

    2024年02月13日
    浏览(38)
  • linux驱动开发入门(学习记录)

    2023.7.6及7.7 、

    2024年02月15日
    浏览(32)
  • linux基础知识学习记录

    计算机组成:计算机主要硬件和软件2部分组成。 计算机软硬件的概念:硬件是可以看得见的物理实体,软件是运行在硬件上不可见的程序。 计算机软硬件的关系:没有硬件,程序就不会存在;没有软件,硬件就是破铜烂铁。 计算机硬件的组成:CPU(中央处理器)、内存、硬盘

    2024年02月07日
    浏览(35)
  • Linux 学习记录41(C++篇)

    在C语言中使用函数时,涉及到值传递与地址传递的问题 引用:是C++对C的一个 重要的扩充 引用可以理解为 给变量取别名 , 不会额外开辟空间 左值 一般是变量,栈区、堆区、.bss、.data 右值 一般是常量或者是临时值(4+5),.ro 例·: 输出:可以看到他们的值和地址都是一致的

    2024年02月11日
    浏览(25)
  • Linux 学习记录50(QT篇)

    所需头文件 QTcpSocket 如有需要请到本文顶部获取,含源码 服务器在上一篇文章 客户端 服务器 所需头文件:QSqlDatabase QSqlQuery QSqlError QSqlRecord 需要在obj文件添加 sql 如下 数据库驱动层:QSqlDriver、QSqlDriverCreator、QSqlDriverCreatorBase、QSqlDriverPlugin sql接口层:QSqlDatabase、QSqlQuery、Q

    2024年02月15日
    浏览(30)
  • Linux 学习记录40(C++篇)

    1. 2. 新建非QT的文件 3. 选择创建的路径 4. 选择编译套件(后面一直下一步即可) 5. 修改文件编码 面向对象的语言:求解的方法。 C++几乎支持所有的C语言语法,g++是编译C++文件时用到的编译器,C++编译器要不C语言编译器更加严格 C中的头文件stdio.h在C++中仍然支持C语言的头文件,

    2024年02月11日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包