000_Linux工具的使用

gdb调试工具

gdb使用:

gdb
file+可执行文件名 装载可执行程序
list 显示程序代码
break+行号 指定行设置断点
clear+行号 删除指定行的断点
watch+变量名 监控程序中某个变量的变化
next 执行下一语句,不进入函数
step 单步执行,进入函数
run 运行已装载的程序

info thread 显示所有当前进程的线程号
thread 线程号 装载指定的线程
next进行调试
详细参考链接:链接: https://blog.csdn.net/daaikuaichuan/article/details/89791255?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-0-89791255-blog-78630731.pc_relevant_recovery_v2&spm=1001.2101.3001.4242.1&utm_relevant_index=3

gdb调试直接在退出位置打断点,能够打印出程序结束位置,便于发现问题

gdb 可执行文件 -ex “b exit” -ex “run”

vi/vim的使用

vi/vim的使用
基本上vi/vim共分为三种模式,分别是命令模式,输入模式和底线命令模式。这三种模式的作用分别是:

1.命令模式

用户刚刚启动vi/vim,便进入命令模式。
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,而是被当做一个命令-插入
以下是常用的几个命令:
i切换到输入模式,以输入字符
x删除当前光标所在处的字符
:切换到底线命令模式

2.输入模式

在命令模式下按下i就进入了输入模式。
在输入模式中,可以使用以下按键:
字符按键以及shift组合,输入字符
ENTER,回车键,换行
BACKSPACE,退格键,删除光标前一个字符
DEL,删除键,删除光标后一个字符
方向键,在文本中移动光标
HOME/END,移动光标到行首行尾
Page Up/Page Down,上下翻页
Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
ESC,退出输入模式,切换到命令模式

3.底线命令模式

在命令模式下按下:(英文冒号)就进入底线命令模式
在底线命令模式中可以输入单个或多个字符命令,可用的命令非常多
基本命令有:
q:退出程序
w:保存文件
按ESC可以随时退出底线命令模式

shell文件编写

#!/bin/sh

#变量的定义
echo “hello world”
yourname=“runtime”
echo $yourname
#删除变量
unset yourname
echo ${yourname}

#if then elif then else fi 条件流程控制的使用
#1
a=10
b=20

val=expr $a + $b
echo “a + b : $val”

val=expr $a - $b
echo “a - b : $val”

val=expr $a \* $b
echo “a * b : $val”

val=expr $b / $a
echo “b / a : $val”

val=expr $b % $a
echo “b % a : $val”

#2
if [ $a == $b ]
then
echo “a 等于 b”
fi

#3
if [ $a != $b ]
then
echo “a 不等于 b”
fi

#4
if [ $a == b ] t h e n e c h o " b ] then echo " b]thenecho"a == $b "
elif [ $a > $b ]
then echo " $a > $b "
else
echo " $a < $b "
fi

#5
a=10
b=20
if (( $a == $b ))
then
echo “a 等于 b”
elif (( $a > $b ))
then
echo “a 大于 b”
elif (( $a < $b ))
then
echo “a 小于 b”
else
echo “没有符合的条件”
fi

#test的使用
#int类型的使用
num1=100
num2=100

if test $[num1] -eq $[num2]
then
echo ‘两个数相等!’
else
echo ‘两个数不相等!’
fi

#string类型的使用
num1=“ru1noob”
num2=“runoob”
if test $num1 = $num2
then
echo ‘两个字符串相等!’
else
echo ‘两个字符串不相等!’
fi

#代码中的[]执行基本的算术运算
a=5
b=6

result=$[a*b] # 注意等号两边不能有空格
echo “result 为: $result”

#函数
#!/bin/bash
function demoFun1(){
echo “这是我的第一个 shell 函数!”
return expr 1 + 1
}

demoFun1
echo $?

function demoFun2(){
echo “这是我的第二个 shell 函数!”
expr 1 + 1
}

demoFun2
echo $?
demoFun1
echo 在这里插入命令!
echo $?

echo "传递到脚本的参数个数 KaTeX parse error: Expected 'EOF', got '#' at position 1: #̲" echo "以一个单字符串…"
echo "脚本运行的当前进程的ID号$ " e c h o " 与 " ′ " echo "与"' "echo""
'“相同,但是使用时加引号,并在引号中返回每个参数$@”

cmake文件编写

阿里云盘链接: https://www.aliyundrive.com/s/HPJqKmndkN1
提取码:vs68

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

月光在发光

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值