Linux基础知识

一、shell

单引号与双引号;echo -e换行转义;echo `date`,注意反引号;test -e查看是否存在文件;函数$n表示第n个参数,当n>=10时需要用{},$?表示返回值。

1、记录历史命令

!!表示上一条指令;!n表示历史第n条指令;!str表示执行历史最后一条以str开头的命令。

2、别名alias

3、通配符?与*

4、输入输出重定向

输入重定向<,输出重定向>,追加重定向>>

5、管道符

|:指把前面的命令行结果丢给后面

6、作业控制

Ctrl+z:暂停

fg:恢复;bg:到后台运行

Ctrl+c:终止

7、变量

env显示所有环境变量;set还会将用户自己设置的变量显示出来。

unset取消变量。

在/etc/profile里面添加变量声明然后运行source /etc/profile即可使系统内所有用户都可以使用此变量。

export声明变量可以使shell的子shell也可以使用该变量。

8、cat,grep,uniq,tee,&,[]的作用

二、gdb

gcc -o test test.c -g

gdb

file test

r:r

c:continue

b:break point(ex:b main;b *main;b 17)

display /i $pc:十六进制显示$pc

i r:information of register

三、汇编指令

mov des, src

为避免歧义:mov BYTE PTR [ebx], 2, mov WORD PTR [ebx], 2, movDWORD PTR [ebx], 2

[]大概就是*的意思

lea des,[src]

je <label> (jump when equal)
jne <label> (jump when not equal)
jz <label> (jump when last result was zero)
jg <label> (jump when greater than)
jge <label> (jump when greater than or equal to)
jl <label> (jump when less than)
jle <label>(jump when less than or equal to)

 

jcondition一般与compare结合使用。

posted @ 2015-11-20 09:01  大魔王Faker  阅读(158)  评论(0编辑  收藏  举报