Linux常用工具

软件包管理工具:yum
三板斧操作:
ping www.baidu.com看看网络是否通畅
su root切换至root权限
sudo yum install lrzsz为当前用户的当前命令操作临时赋予root权限,
初次使用时需要sudoers配置文件中添加普通用户:su root,chmod u+w /etc/sudoers,vim/etc/sudoers,:90跳转至第90行向下方添加内容
username ALL=(ALL) ALL
查看所有能够安装的软件包:yum list
安装软件包:yum install package_name
移除软件包:yum remove package_name

个人编程相关工具:编辑器/编译器/调试器
编辑器:vim
vim的操作模式:12种,常用的有三种
普通模式:vim打开文件默认所处模式,对文件内容进行命令操作
插入模式:对文件插入数据
底行模式:当前仅涉及保存和退出操作
模式切换:vim filename
普通–>插入: iao/IAO
插入–>普通:ESC vim中所有模式都是围绕普通模式切换的,连续按两下esc都会切换回普通模式
普通–>底行: 冒号":"
底行模式下的操作:
:w(保存) :q(退出) :wq(保存退出) :q!(强制退出,不保存) :x(修改之后保存并退出,否则仅退出)
普通模式下的操作:
光标移动的操作:hjkl上下左右 wb单词右左移动 ctrl+f/b下上翻页 gg/G直至首行尾行
文件内容的操作: yy复制光标所在行内容 p在下一行粘贴 nyy复制光标所在行直至n行数据 P向光标所在行上一行粘贴 dd剪贴 ndd从光标所在行向下n行 x删除光标所在字符 dw删除光标所在单词 D从光标所在行到本行行位
其他操作: u撤销上次操作 ctrl+r反向撤销 gg=G全文对齐

编译器: gcc/g++ c语言/c++
通常认为c语言程序是一种高级语言程序,这些程序cpu无法直接识别,需要编译器解释为机器指令后方可执行
编译过程:
预处理:宏替换,展开头文件,删除注释
编译:进行语义语法检测,解释为汇编代码
汇编:将汇编代码解释为二进制机器指令
链接:将当前代码以及函数库还有其他文件代码打包生成可执行性程序
函数库:将大量已经实现的代码打包生成一个文件–库文件(编译好的机器指令代码)
链接方式的分类:
动态链接:链接时在可执行程序中记录库中函数符号信息表,并没有将具体函数的实现代码写入到可执行程序中,运行时需要加载到内存中,但是在内存中多个程序可以使用同一个库(节省资源)
静态链接:在链接函数库文件生成可执行程序的时候,直接将库中的代码实现写入到可执行程序中,生成的代码会比较大一点,但是运行的时候不需要库的存在
(gcc中默认的是动态链接)
gcc常见选项:
-E 当前gcc只完成预处理
-S 当前gcc只完成编译
-c 当前gcc只完成汇编
-o 用于指定要生成的目标文件名称
-g 生成debug版本程序

调试器: gdb
调试程序运行过程,查看程序出问题的位置
程序调试的前提:生成一个debug版的程序,程序中添加了调试符号信息,
然而linux下gcc编译器,默认生成的是release版程序,编译程序时,增加gcc -g选项,表示生成debug版程序
1.开始调试命令:
run:程序直接开始运行; start: 开始逐步调试
2.调试的流程控制命令:
list— 查看指定文件指定行附近的代码 list filename:line
step—下一步,若当前调试位置是一个函数,则会进入函数 next:下一步,直接运行这一行的函数
until— 直接运行到指定文件的指定行 until filename:line
continue: 从当前位置继续运行
3.断点相关命令:
break—打断点 break filename:line break function_name
info break—查看断点信息 delete—删除所有断点 delete break_id:
watch— 变量监控,当变量内容发生变化则停下来 watch varible name
4.其他命令:
backtrace:—查看程序运行信息中的函数调用栈信息—定位程序崩溃位置,因为程序崩溃后,栈顶函数就是出问题的函数
print—查看变量内容

项目相关工具
项目的自动化构建工具:make/Makefile
Makefile: 是一个记录项目构建流程规则的文本文件,在这个文件中可以编写整个项目的编译流程规则
make: Makefile解释程序,逐行解释执行项目构建规则,完成项目构建,当前命令行下输入make,这时候这个解释程序会到当前路径下寻找名叫Makefile的文件,对其内部的内容进行解释执行, 找到第一个目标对象后,执行命令并退出
Makefile的编写规则:
1.目标对象: 依赖对象
\n\t要执行的指令
make的解释执行规则:

2.预定义变量:在命令中使用的变量/makefile中提前定义好的变量
$^—所有的依赖对象 main.o child.o
$<—所有依赖对象中的第一个 main.o
$@—目标对象 main
3. .PHONY:clean—声明伪对象:不管目标对象是否最新,每次都重新生成
通常需要生成的程序不会设置伪对象,因为每个项目的构建可能需要很长时间

项目的版本管理工具: git/svn 可以实现在后续的版本变化中直接回滚到某一版本
svn : 服务器模式的集中版本管理工具
git : 是一种分布式项目版本管理工具(可在pc中建立git仓库,于本地进行自己的版本管理, 比较灵活)

git clone : 克隆远程服务器上的git仓库
git add ./*:添加本次修改的文件信息
git comment -m"本次提交的备注"
git push origin master
注意配置git信息(邮箱)
编写一个进度条程序:
printf函数: 向标准输出写入数据—将数据打印到终端显示
注意:printf并不会立即将数据写入标准输出文件,而是先写入到缓冲区中

\r:回车符,让光标移动到起始位置
\n:换行符,针对标准输出的时候可以刷新缓冲区

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
更新内容:<br> 1.优化viewthread中的虚拟形象显示算法,每一个有虚拟形象显示的帖子页面只增加一次数据库查询(原本为每显示一个一次或一次以上查询),对于一页显示十帖的页面可减少至少9次查询。<br> 2.虚拟形象中心算法优化,每页减少5个以上查询。<br> 3.采用新的算法显示虚拟形象中心的个人形象,增加穿戴类别为整体造型的形象的功能,并且无需独立的header模版,减少了为使风格统一而进行修改的麻烦。<br> 4.虚拟形象中心中增添按形象名查询的功能,增加管理员可直接点击形象名进行设置形象的功能<br> 5.虚拟形象后台管理集成至系统设置中,功能完善:可批量修改虚拟形象,可编辑用户拥有的虚拟形象,更添加了虚拟形象数据的备份导出导入,方便批量添加虚拟形象和虚拟形象数据的更新升级流通。<br> 6.添加GD库版本和形象图片路径两个参数变量,图片路径参数可实现调用远程图片,对于没有空间存放图片包的会员可减少负担,但失去了主动升级的能力(因为你的图片文件是别人的呀,无法控制添加减少。) <br> <br> 将虚拟形象所有文件上传到相应位置,运行images_install.php,根据个人情况选择全新安装或升级。<br> 安装或升级后进入系统设置,对虚拟形象基本变量进行设置。<br> 如选择的是全新安装,还需在后台中将虚拟形象原始形象数据包导入。<br> 修改viewthread/template/tplfile目录,virtualimage/photo目录和virtualimage/images_config.php文件的权限为777<br> 修改相关文件完成安装。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值