当前位置: 首页 > news >正文

网站建设上海服装辅料东莞网站建设

网站建设上海,服装辅料东莞网站建设,友情链接也称为,医院网站建设政策Linux 常用工具 一、Linux 软件包管理器 yum1. 软件包2. 查看软件包3. 安装/卸载软件4. yum 其他指令的功能 二、Linux 编辑器 - vim 使用1. vim 的基本概念2. vim 的基本操作#xff08;1#xff09;光标移动#xff08;命令模式#xff09;#xff08;2#xff09;光标… Linux 常用工具 一、Linux 软件包管理器 yum1. 软件包2. 查看软件包3. 安装/卸载软件4. yum 其他指令的功能 二、Linux 编辑器 - vim 使用1. vim 的基本概念2. vim 的基本操作1光标移动命令模式2光标定位命令模式3复制粘贴撤销命令模式4其他操作命令模式5保存并退出底行模式6替换模式7视图模式8多文件编辑 三、Linux 编译器 - gcc/g 使用1、程序的翻译过程2、动静态库的理解 一、Linux 软件包管理器 yum 1. 软件包 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.但是这样太麻烦了于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成 windows 上的安装程序)放在一个服务器上通过包管理器可以很方便的获取到这个编译好的软件包直接进行安装.软件包和软件包管理器, 就好比 “App” 和 “应用商店” 这样的关系. 2. 查看软件包 通过 yum list 命令可以罗列出当前一共有哪些软件包由于包的数目可能非常之多, 这里我们需要使用 grep 命令只筛选出我们关注的包例如 软件包名称: 主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构.“x86_64” 后缀表示 64位 系统的安装包“i686” 后缀表示 32位 系统安装包. 选择包时要和系统匹配.“el7” 表示操作系统发行版的版本. “el7” 表示的是 centos7/redhat7. “el6” 表示 centos6/redhat6.最后一列updates 表示的是 “软件源” 的名称类似于 “小米应用商店”“华为应用商店” 这样的概念 3. 安装/卸载软件 通过 yum我们可以通过很简单的一条命令完成 sl 命令的安装sudo yum install sl sl 命令是一个有趣的命令输入 sl 命令回车后屏幕上会有火车开过我们先安装 sl 命令因为安装需要 root 权限所以我们在安装时要在前面加上 sudo意思是使用 root 权限执行这条命令如何才能使用 sudo 将会在后面介绍如下图 执行这条命令之后可能会让你输入当前用户的密码我们输入即可输入之后在短时间内再次使用 sudo 将不会再次输入密码 随后将会进入安装过程可能会让你确认是否安装如下图 意思是需要多少内存是否确认安装我们输入 y 确认即可安装好后如下图 随后我们执行 sl 命令如下 我们如果需要卸载 sl 命令在命令行输入 sudo yum remove sl 即可如下图 如上图就已经卸载成功了我们再次执行 sl 命令时如下 说明已经卸载成功。 同时我们在进行安装和卸载操作时可以在后面加上 -y 选项即 sudo yum install sl -y 默认确认安装系统就不会再次询问我们是否确认安装。 4. yum 其他指令的功能 yum makecache 命令的功能是将服务器的软件包信息缓存到本地yum search 命令可以在所有软件包中搜索包含有指定关键字的软件包yum clean all 命令可以清除缓存中老旧的头文件和软件包yum clean all 命令可以清除缓存中老旧的头文件和软件包yum -y upgrade 只升级所有包不升级软件和系统内核软件和内核保持原样 二、Linux 编辑器 - vim 使用 1. vim 的基本概念 vim 是一款多模式的文本编辑器。 vi/vim 的区别简单点来说它们都是多模式编辑器不同的是 vim 是 vi 的升级版本它不仅兼容 vi 的所有指令而且还有一些新的特性在里面。例如语法加亮可视化操作不仅可以在终端运行也可以运行于x window、 mac os、windows。 我们先来熟悉 vim 的三种常见的模式分别是命令模式command mode、插入模式Insert mode和底行模式last line mode。 他们之间的转化图如下 正常/普通/命令模式(Normal mode) 控制屏幕光标的移动字符、字或行的删除移动复制某区段及进入 Insert mode下或者到 last line mode插入模式(Insert mode) 只有在 Insert mode下才可以做文字输入按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。底行模式(last line mode) 文件保存或退出也可以进行文件替换找字符串列出行号等操作。在命令模式下shift: 即可进入该模式。要查看你的所有模式打开vim底行模式直接输入 : help vim-modes 例如我们先 touch 一个 test.c 文件 再使用 vim 进入 test.c 其中我们进入 test.c 之后默认是 命令模式 从转换图中可以看见我们按下 i 或a、o就可以进入插入模式在左下角就会显式 insert 这个单词如下图 此时我们就可以对 test.c 这个文件进行编辑例如我们写一个简单的 .c 文件 此时如果我们想进入底行模式从转化图可以看出我们先要按下 Esc 进入命令模式再按下 shift ; 就可以进入底行模式了进入底行模式后左下角会出现一个 : 如下图 此时输入我们需要的指令即可。 2. vim 的基本操作 我们在上面已经知道vim 默认打开的模式是命令模式所以我们先熟悉在命令模式下的操作。 1光标移动命令模式 首先在命令模式下我们的光标只能使用键盘的操作移动我们可以使用键盘的 ↑ ↓ ← → 移动光标但是我们并不常用箭头的操作移动光标而是使用 h、j、k、l 移动。 h光标向左移动一个单位 j光标向下移动一个单位 k光标向上移动一个单位 l光标向右移动一个单位 2光标定位命令模式 除了上下左右移动光标外我们还可以在文本中进行特定的操作如下 gg定位到代码的第一行shift g定位到代码的最后一行n shift g :定位到代码的第n行shift 6(^) 定位到特定一行的开始shift 4($) 定位到特定一行的结尾w以单词为单位进行向后移动支持跨行的b以单词为单位进行向前移动支持跨行的 3复制粘贴撤销命令模式 我们也可以对文本进行复制粘贴等操作 yy复制光标所在的一行n yy复制n行p粘贴内容到当前行之后n p粘贴n行dd剪切/删除光标所在行n ddu对刚刚的操作进行撤销即windows下的ctrlzctrl r反撤销windows下的ctrl y 4其他操作命令模式 shift ~文本大小写相互转换r替换光标所在的字符n r替换n个字符x向后删除一个字符n x向后删除n个字符shift x向前删除一个字符n shift x向前删除n个字符shift 3(#)查找同名单词按n单次跳转 我们简单学完命令模式下的操作之后我们再学一下底行模式的常见操作。 5保存并退出底行模式 我们在命令模式下按下 Esc 再按下 shift ;即可切换到底行模式我们在底行模式下可以执行以下操作 w保存文本w强制保存文本q退出当前文本q强制退出文本wq保存并退出wq强制保存并退出set nu/nonu为文本设置行号 除了我们所学的三个模式之外我们再简单学两个模式分别是替换模式、视图模式他们之间的模式转换图如下 6替换模式 首先介绍替换模式我们在命令模式下按下 shift r 后就进入了替换模式此时左下角会出现 REPLACE 这个单词如下图 此时我们可以直接进行替换单词替换的是光标所在的单词每按下一次就会进行一次单词替换。 7视图模式 视图模式是用来帮助我们完成批量化注释的例如我们需要注释多行代码就可以使用视图模式。首先我们需要在命令模式下按下 ctrl v 进入视图模式进入视图模式后左下角会显示 例如我们的文本如下需要注释全部的 printf 函数 随后我们需要进行批量化注释按 j/k 两个按键上下选中区域 随后按下 shift i光标会回到初始的位置 随后我们就在这个位置加上注释符 //最后按下 Esc 如上图就完成批量化注释了。 总结需要完成批量化注释的操作步骤 在命令模式下ctrlv 进入视图模式j/k 两个按键上下选中需要注释的区域按下 shift i给当前行加上注释符按下 Esc 接下来我们进行批量化删除注释同理我们先要进入视图模式然后hjkl 选中区域以上面注释的代码为例我们删除全部注释的代码选中区域后如下 随后按下 d 即可如下图 总结删除批量化注释步骤 ctrl v 进入视图模式hjkl 选中区域按下 d 即可 我们在进行选中区域的时候有一个小技巧可以使用命令模式中的 n shift g 快速选中需要的区域。 8多文件编辑 vim 也支持多文件编辑 我们需要先使用 vim 打开一个文本进入底行模式在底行模式中输入vs 需要打开的文本名字 例如下图 如下图就可以进行多文件编辑了 需要注意的是我们的光标在哪一个文本操作的就是哪一个文本我们可以在命令模式下按下 ctrl ww 可以切换光标到下一个的文本。 小技巧我们在使用 vim 时打开文本后光标所停留的地方是我们上一次保存退出后所在的位置我们可以使用 vim test.c n 打开 test.c 后直接将光标定位到第 n 行这是为了方便我们编译文件时出错后可以直接定位到那一行。 三、Linux 编译器 - gcc/g 使用 1、程序的翻译过程 在学习 gcc/g 之前我们先回忆一下程序的翻译过程预处理和程序环境程序的翻译过程包括预处理、编译、汇编、链接。 预处理 预处理就是进行头文件的展开、去注释、条件编译、宏替换等操作我们可以使用 gcc 验证这一过程假设我们在 test.c 文件中有一段以下代码 我们只需要执行 gcc -E test.c -o test.i 即可生成预处理完后的文件以 .i 后缀结尾如下图 我们使用 vim 进入 test.i 文件查看如下图 从图中可以看出我们的代码已经到800多行了说明前面的头文件已经展开了并且注释和宏替换也已经进行了。 在 gcc -E test.c -o test.i 这段指令中其含义是使用 gcc 进行程序的翻译待处理完预处理后就停下来并将预处理完的程序生成以 .i 为后缀的文件其中 -E 就是对文件进行预处理操作-o 文件名 就是生成指定文件。 编译 编译的过程就是将 C语言 转化为汇编语言我们可以直接从源文件转化为汇编语言也可以从预处理完后的文件转换为汇编语言 如果从源文件直接转化为汇编语言其指令为 gcc -S test.c -o test.s 但是我们上面已经有预处理完的文件如果直接又从源文件开始就重复工作了所以我们直接从 test.i 文件转换为汇编语言其指令为 gcc -S test.i -o test.s如下图 其中 gcc -S test.i -o test.s 这段指令中-S 代表开始程序翻译工作等编译完成后就停下来其中编译后的文件应该是以 .s 后缀为结尾的。 汇编 汇编的过程是将汇编语言转化为可重定位的二进制文件同上我们也可以从源文件直接转化为二进制文件但是我们已经将文件转为汇编文件了所以可以从汇编文件开始转化为二进制文件其指令为 gcc -c test.s -o test.o如下图 其中 -c 选项代表汇编工作完成就停下来可重定位的二进制文件是以 .o 后缀为结尾的文件test.o 是一个不可执行的文件。 链接 链接是将 test.o 文件加上系统库生成可执行程序的过程其指令为 gcc test.o -o 可执行文件名如下图 上图中的 mycode 就是一个可执行的程序文件我们执行它只需输入指令 ./mycode如下图 如上图就完成了程序的执行。 上面的四个步骤就是我们程序的翻译过程但是我们平时想要执行一个程序的时候并不需要分别执行上面的步骤例如我当前的目录下只有一个 .c 文件如图 我们当前可以直接将 test.c 文件直接生成可执行文件只需要执行指令 gcc test.c 即可如下图 系统默认生成的可执行文件的名称为 a.out 我们想要执行它的时候只需要在当前目录下找到它直接执行即可其指令为 ./a.out如图 这样就完成了我们程序的执行另外如果我们想要 test.c 文件生成指定名称的可执行文件可以带上 -o 选项即执行 gcc test.c -o 文件名 即可。 以上是 gcc 的使用其实 g 的使用和 gcc 的使用类似可以完全参考 gcc只是使用的时候将 gcc 改为 g 即可。其中 gcc 是编译 C语言 的编译器而 g 可以编译 C语言 和 C . 2、动静态库的理解 我们上面的 C程序 中并没有定义 “printf” 的函数实现且在预编译中包含的 “stdio.h” 中也只有该函数的声明而没有定义函数的实现那么是在哪里实现 “printf” 函数的呢? 答案是系统把这些函数实现都被做到名为 libc.so.6 的库文件中去了在没有特别指定时gcc 会到系统默认的搜索路径 /usr/lib64/libc.so.6 下进行查找也就是链接到 libc.so.6 库函数中去这样就能实现函数 “printf” 了而这也就是链接的作用我们可以看到这个文件确实存在 静态库 静态库是指编译链接时把库文件的代码全部加入到可执行文件中因此生成的文件比较大但在运行时也就不再需要库文件了。其后缀名一般为 .a 其中静态库是 C/C 或者其他第三方提供的所有方法的集合被所有程序以拷贝的方式将需要的代码拷贝到自己的可执行程序中 静态链接的优点无视库可以独立运行 静态链接的缺点体积太大浪费资源 默认情况下我们的服务器是没有安装 C 静态库的只有动态库如果需要安装C静态库只需要执行指令 sudo yum install glibc-static如果需要安装C静态库执行指令 sudo yum install -y libstdc-static 即可。 sudo yum install glibc-static // c 静态库sudo yum install -y libstdc-static // c 静态库动态库 动态库与之相反在编译链接时并没有把库文件的代码加入到可执行文件中而是在程序执行时由运行时链接文件加载库这样可以节省系统的开销。动态库一般后缀名为 .so如前面所述的 libc.so.6 就是动态 库。 gcc 在编译时默认使用动态库。完成了链接之后gcc 就可以生成可执行文件。 动态链接的优点形成的可执行程序体积比较小节省资源 动态链接的缺点稍慢一些强依赖动态库动态库没了所有依赖这个库的程序都无法运行了
http://www.w-s-a.com/news/185437/

相关文章:

  • 手机网站开发之列表开发win7网站开发教程
  • 楚雄市住房和城乡建设局网站廊坊企业网站建设
  • 东莞规划局官方网站wordpress添加文章页不显示图片
  • 做企业网站要哪些人员百度商城网站建设
  • c语言软件开和网站开发区别多产品的网站怎么做seo
  • 收益网站制作移动互联网应用的使用情况表格
  • 专业的手机网站建设公司哪家好同城信息网站建设
  • 参与做网站的收获国外网站服务器建设
  • 西宁网站建设报价cu君博规范网站kv如何做
  • 毕业室内设计代做网站广东建设监理协会网站个人账号
  • 百度推广点击收费标准自己如何做网站优化
  • 安徽省建设监理网站广州澄网站建设公司
  • 做简历用什么网站俄罗斯搜索引擎浏览器官网入口
  • dw里响应式网站怎么做制作网站需要多少时间
  • 网站如何做双链路示范学校建设专题网站
  • 网站开发北京影视网站seo描述
  • 高端网站定制建设公司哪家好企业网络推广技巧
  • 建设公司网站的内容建筑设计图片
  • 用ps怎么做网站的效果图互联网营销师报名入口官网
  • 网站的后端怎么开发网站 白名单
  • 济宁中小企业网站建设wordpress爆破工具
  • 零基础网站建设视频商城系统平台有哪些
  • 那个网站做百科好过wordpress删除
  • 优化网站排名怎么制作网站建设数据库模板
  • 哪个建站软件比较好带论坛都有什么公司需要网站建设
  • 同城便民网站开发自己免费怎么制作网站吗
  • 数据库网站开发教程网站内部优化是什么意思
  • 哈尔滨建站怎么做广西seo快速排名
  • 公司网站建设的不足企业文档管理wordpress
  • .net做的网站代码网站怎么加二级域名