wordpress 多语言网站,html5网站模板,国外网站如何备案,图片生成二维码在线制作文章目录 一、yum1、介绍2、功能3、语法4、使用 二、rzsz1、安装rzsz的指令2、介绍3、使用 三、vim基础使用1、介绍2、基础使用 四、gcc/g使用1、生成可执行文件过程2、语法3、常用选项4、编译过程5、动静态库6、包含头文件的多文件编译7、链接外部库 一、yum
1、介绍 Linux中… 文章目录 一、yum1、介绍2、功能3、语法4、使用 二、rzsz1、安装rzsz的指令2、介绍3、使用 三、vim基础使用1、介绍2、基础使用 四、gcc/g使用1、生成可执行文件过程2、语法3、常用选项4、编译过程5、动静态库6、包含头文件的多文件编译7、链接外部库 一、yum
1、介绍 Linux中的yum是一个强大的软件包管理器全称为Yellow dog Updater, Modified。它在Fedora、RedHat以及基于RPM包管理系统的其他Linux发行版如CentOS中广泛使用。yum基于RPM包管理但提供了更高级的功能如自动解决软件包依赖关系、从指定服务器自动下载RPM包并进行安装等。 2、功能 yum命令提供了查找、安装、更新、删除以及管理软件包仓库等功能的命令行接口。通过yum用户可以轻松地管理系统中的软件包无需手动下载和处理复杂的依赖关系。 3、语法
yum [options] [command] [package ...]options可选参数用于修改命令的行为如-y自动回答yes、-q静默模式、-v详细模式等。 command要执行的操作如install安装、update更新、remove删除等。 package软件包名称是执行操作时的目标对象。 4、使用 使用yum命令时需要是root用户或者普通用户提权。 1安装软件
yum install package_namepackage_name软件包名称。
2更新系统上的全部软件
yum update3更新系统上指定的软件包
yum update package_name4删除软件包
yum remove package_name5搜索包含特定关键字的软件包
yum search keyword6列出所有已安装的软件包
yum list installed7列出所有可用的软件包
yum list available8已安装的软件包中查找lrzsz通过管道加grep指令
yum list installed | grep lrzsz9清理所有缓存的包和头文件
yum clean all10仅清理缓存的包
yum clean packages11仅清理缓存的头文件
yum clean headers二、rzsz
1、安装rzsz的指令
sudo yum install lrzsz2、介绍 rzsz是一个在Linux环境中常用的文件上传下载工具它允许用户通过终端界面在本地和远程系统之间传输文件。rz和sz命令通常与串口通信或SSH连接一起使用特别是在没有图形化界面的服务器上工作时非常方便。 3、使用 从Windows传输文件到Linuxrz命令 方法一直接拖拽文件如果终端软件支持。 方法二在Linux终端中输入rz命令然后Windows资源管理器或文件管理器会被打开。在Windows中选择要传输的文件点击“打开”或“确定”文件就会被上传到Linux服务器中。 rz //输入回车后会自动跳出从Linux传输文件到Windowssz命令 在Linux终端中使用sz命令后跟文件名来发送文件到本地Windows机器。 sz filename三、vim基础使用
1、介绍 Vim是一个功能强大的文本编辑器广泛用于Linux和Unix系统中也支持在Windows系统中通过不同的方式使用。Vim具有三种主要模式普通模式也称为命令模式、插入模式和末行模式。 2、基础使用
1普通模式也称为命令模式 普通模式进入插入模式 按「i」切换进入插入模式「insert mode」 按“i”进入插入模式后是从光标当前位置开始输入文件 按「a」进入插入模式后是从目前光标所在位置的下一个位置开始输入文字 按「o」进入插入模式后是插入新的一行从行首开始输入文字。 移动光标 vim可以直接用键盘上的光标来上下左右移动但正规的vim是用小写英文字母「h」、「j」、「k」、「l」分别控制光标左、下、上、右移一格。 按「G」移动到文章的最后 按「$」移动到光标所在行的“行尾” 按「^」移动到光标所在行的“行首” 按「w」光标跳到下个字的开头 按「e」光标跳到下个字的字尾 按「b」光标回到上个字的开头 按「#l」光标移到该行的第#个位置如5l,56l 按gg进入到文本开始 按shiftg进入文本末端 按「ctrl」「b」屏幕往“后”移动一页 按「ctrl」「f」屏幕往“前”移动一页 按「ctrl」「u」屏幕往“后”移动半页 按「ctrl」「d」屏幕往“前”移动半页 删除文字 「x」每按一次删除光标所在位置的一个字符 「#x」例如「6x」表示删除光标所在位置的“后面包含自己在内”6个字符 「X」大写的X每按一次删除光标所在位置的“前面”一个字符 「#X」例如「20X」表示删除光标所在位置的“前面”20个字符 「dd」删除光标所在行 「#dd」从光标所在行开始删除#行 复制 「yw」将光标所在之处到字尾的字符复制到缓冲区中。 「#yw」复制#个字到缓冲区 「yy」复制光标所在行到缓冲区。 「#yy」例如「6yy」表示拷贝从光标所在的该行“往下数”6行文字。 「p」将缓冲区内的字符贴到光标所在位置。注意所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。 替换 「r」替换光标所在处的字符 「R」替换光标所到之处的字符直到按下「ESC」键为止。 撤销上一次操作 「u」如果您误执行一个命令可以马上按下「u」回到上一个操作。按多次“u”可以执行多次回复。 「ctrl r」: 撤销的恢复 更改 「cw」更改光标所在处的字到字尾处 「c#w」例如「c3w」表示更改3个字 跳至指定的行 「ctrl」「g」列出光标所在行的行号。 「#G」例如「15G」表示移动光标至文章的第15行行首。 2插入模式 在普通模式下通过输入i、a、o等命令可以进入插入模式此时可以输入文本。 快捷键示例 i在当前光标处进入插入模式。 a在当前光标后一个字符处进入插入模式 o在当前行下方新加一行并进入插入模式。 按Esc键退出插入模式回到普通模式。 3末行模式 在使用末行模式之前请记住先按「ESC」键确定您已经处于正常模式再按「」冒号即可进入末行模式。 列出行号「set nu」: 输入「set nu」后会在文件中的每一行前面列出行号。 跳到文件中的某一行「#」: 「#」号表示一个数字在冒号后输入一个数字再按回车键就会跳到该行了如输入数字15再回车就会跳到文章的第15行。 查找字符「/关键字」: 先按「/」键再输入您想寻找的字符如果第一次找的关键字不是您想要的可以一直按「n」会往后寻找到您要的关键字为止。向上查找 「?关键字」先按「?」键再输入您想寻找的字符如果第一次找的关键字不是您想要的可以一直按「n」会往前寻找到您要的关键字为止。向下查找 保存文件 「w」: 在冒号输入字母「w」就可以将文件保存起来 离开vim 「q」按「q」就是退出如果无法离开vim可以在「q」后跟一个「!」强制离开vim。 「wq」一般建议离开时搭配「w」一起使用这样在退出的时候还可以保存文件。 4注释和去注释 注释 Ctrlv 进入块选择模式然后使用hjkl移动光标进行选择在按shifti进行注释这样选择的行就会跟着注释。
去注释 Ctrlv进入块选择模式然后使用hjkl移动光标选择然后按下d即可。
四、gcc/g使用
1、生成可执行文件过程 预处理进行宏替换)编译生成汇编)汇编生成机器可识别代码连接生成可执行文件或库文件 2、语法
gcc [选项] 要编译的文件 [选项] [目标文件] 链接库外部库/头文件目录
g [选项] 要编译的文件 [选项] [目标文件] 链接库外部库/头文件目录3、常用选项 -E 只激活预处理,这个不生成文件,你需要把它重定向到一个输出文件里面 -S 编译到汇编语言不进行汇编和链接 -c 编译到目标代码 -o 文件输出到 文件 -static 此选项对生成的文件采用静态链接 -g 生成调试信息。GNU 调试器可利用该信息。 -shared此选项将尽量使用动态库所以生成文件比较小但是需要系统由动态库. -O0-O1-O2-O3编译器的优化选项的4个级别 -O0表示没有优化, -O1为缺省值 -O3优化级别最高 -w 不生成任何警告信息。 -Wall 生成所有警告信息。 -i(大写)添加头文件搜索路径。如 g -o test test.c -I test.h -L添加库文件搜索路径。 -l链接指定的库。 标准选项 -stdc98、-stdc11、-stdc14、-stdc17、-stdc20 等用于指定C标准版本 4、编译过程 预处理(进行宏替换) 预处理功能主要包括宏定义,文件包含,条件编译,去注释等。 预处理指令是以#号开头的代码行。 实例: gcc –E hello.c –o hello.i 选项“-E”,该选项的作用是让 gcc 在预处理结束后停止编译过程。 选项“-o”是指目标文件,“.i”文件为已经过预处理的C原始程序。只能处理一个源文件 编译生成汇编 在这个阶段中,gcc首先要检查代码的规范性、是否有语法错误等,以确定代码的实际要做的工作,在检查 无误后,gcc 把代码翻译成汇编语言。 用户可以使用“-S”选项来进行查看,该选项只进行编译而不进行汇编,生成汇编代码。 实例: gcc –S hello.i –o hello.s 只能处理一个源文件 汇编生成机器可识别代码 汇编阶段是把编译阶段生成的“.s”文件转成目标文件 读者在此可使用选项“-c”就可看到汇编代码已转化为“.o”的二进制目标代码了 实例: gcc –c hello.s –o hello.o只能处理一个源文件 连接生成可执行文件或库文件 在成功编译之后,就进入了链接阶段。 实例: gcc hello.o –o hello 可以对多个文件进行链接 5、动静态库 静态库是指编译链接时,把库文件的代码全部加入到可执行文件中,因此生成的文件比较大,但在运行时也就不再需要库文件了。其后缀名一般为“.a”。 动态库与之相反,在编译链接时并没有把库文件的代码加入到可执行文件中,而是在程序执行时由运行时链接文件加载库,这样可以节省系统的开销。动态库一般后缀名为“.so”,如前面所述libc.so.6 就是动态库。gcc 在编译时默认使用动态库。完成了链接之后,gcc 就可以生成可执行件,如下所示。gcc hello.o –o hellogcc默认生成的二进制程序是动态链接的这点可以通过gcc选项 file 命令验证。 file hellogcc显示信息
6、包含头文件的多文件编译
编译有头文件的文件时需要通过 -I(i的大写)添加头文件搜索路径。 如编译源文件ProgressBar.c test.c 这些源文件包含了ProgressBar.h
gcc ProgressBar.c test.c -o test -I ./7、链接外部库 在使用g编译C程序时如果需要链接到外部库你需要确保编译器实际上是链接器能够找到这些库文件并将它们与你的程序一起链接。这通常涉及到指定库文件的搜索路径使用-L选项和指定要链接的库使用-l选项注意不包括前缀lib和后缀如.so、.a等。 -L指定库文件的搜索路径。这告诉链接器在哪些目录中查找指定的库文件。 -l指定要链接的库名不包括前缀lib和后缀如.so、.a等。链接器会在-L指定的路径或标准库路径中查找相应的库文件。 假设你有一个名为myapp.cpp的C源文件它依赖于一个名为mylib的外部库该库文件位于在标准库目录下并且你想要生成一个名为myapp的可执行文件
g myapp.cpp -o myapp -lmylib这里mylib是库名链接器会查找名为libmylib.so在Linux上对于共享库或libmylib.a对于静态库的文件。
假设你有一个名为myapp.cpp的C源文件它依赖于一个名为mylib的外部库该库文件位于/usr/local/lib目录下并且你想要生成一个名为myapp的可执行文件。
g myapp.cpp -o myapp -L/usr/local/lib -lmylib这条命令会编译myapp.cpp告诉链接器在/usr/local/lib目录下查找库文件并链接名为mylib的库。