- 博客(10)
- 资源 (18)
- 收藏
- 关注
原创 shell中位置变量参数
$# : 传递到脚本的参数个数$* : 以一个单字符串显示所有向脚本传递的参数。与位置变量不同,此选项参数可超过 9个$$ : 脚本运行的当前进程 ID号$! : 后台运行的最后一个进程的进程 ID号$@ : 与$#相同,但是使用时加引号,并在引号中返回每个参数$- : 显示shell使用的当前选项,与 set命令功能相同$? : 显示最后命令的退出状态。 0表示没有错误,
2012-01-30 17:02:09 6496
原创 目录拷贝–bash实现
刚开始看shell,写了一个bash的小程序,功能是将原目录下的所有子目录都复制到目的目录,但是不复制里面的文件。能够用于某些场合:比如需要原来的文件目录结构,但是里面的内容却是需要更新的。下面的代码都是在我自己的电脑上测试的,路径稍微改动下就OK!#!/bin/shfunction usage(){ echo "Input such as : " echo "$0 source_di
2012-01-28 22:34:40 1969
原创 sed变量替换问题
下午在写一段shell脚本的时候,遇到了一个问题,就是在sed里面的变量替换不了。sed‘s/^$srcdir/test/g’/tmp/src_temp_dir.txt > /tmp/des.txt上面srcdir变量里面存的是一个文件的完整路径,文件里面也是一些路径的字符串。我想把原来文件里的路径都换了。结果就是换不了,弄了很久才怀疑是$srcdir没有解释出来,结果去网
2012-01-28 19:23:37 3083
原创 Linux系统--job control
工作管理(job control)是在bash环境下进行的,能在一个终端机下面进行多个工作管理。但是这些工作都是bash的子进程。这样就能让用户把一些工作放在后台处理,而前台继续其他工作,就像开启多线程一样,不过这里的单位都是线程。直接将命令丢到后台“执行” : &[firefox@fire ShellProgram]$ vim Pra1.sh &把目前的工作丢到后台并且“
2012-01-26 19:54:23 750
原创 双栈
双栈意思就是双向栈,基本思想就是在一段内存里面,栈从两边分别向中间生长,这样可以提高内存的利用率。下面是C的实现代码,仅仅是基本的功能,重在于思想。#include #include #define INIT_STACK_SIZE 100typedef int ElemType;typedef struct DoubleStack{ ElemType *array; int t
2012-01-22 13:34:06 1525
原创 Linux系统启动–虚拟文件系统
我们按下电源键,计算机第一个执行的程序就是MBR上面的BootLoader,同时,BIOS还会完成一些硬件的初始化等,接下来呢BootLoader就要去加载内核文件到内存,然后将内核文件解压,完成内核文件的加载,从这里开始BIOS的功成身退,以后的任务就交给内核来完成了。内核文件在哪里呢?输入ls –format=single-column -F /boot
2012-01-19 19:29:15 919
原创 链表逆置
算法一首先想到的肯定是创建一个新的空链表,然后把旧的链表中的元素通过指针p从头到尾遍历,每遍历一个,就把该元素从链表中脱离,添加到新的链表的头部,新建空链表的时候可以初始化一个空的无用节点(仅仅是为了操作方便)。算法二不通过新建一个新链表,具体是让第一个节点的指针域为NULL,第二个指针域指向第一个节点,第三个指向第二个~~~~~~L指向最后一个节点。下面是代码:
2012-01-17 00:46:47 867
原创 通过进程ID获取基地址
下面代码是通过进程ID来获取进程的基地址,创建一个进程快照后,读取进程模块,一般情况下第一个模块就是进程的基地址,下面的程序通过模块的字符串匹配来找到基地址。通过MODULEENTRY32来读取,下面是代码:#include #include #include HMODULE fnGetProcessBase(DWORD PID);DWORD GetLastErrorBox(HWND
2012-01-14 23:40:26 7105
原创 一个小程序的栈溢出
看下面代码:#include int cp (char *p){ int a; char b[8]; a=strcmp(p,"1234567"); strcpy(b,p); return a;}int main(){ int v=0; char p[1024]; while(1) { printf("please input password:
2012-01-12 21:07:09 4233
原创 进程快照获取
进程快照主要存在于PROCESSENTRY32这个结构体中,下面是这个结构体的信息。typedef struct tagPROCESSENTRY32 {DWORD dwSize; //结构体大小DWORD cntUsage; //0DWORD th32ProcessID; //进程ID:PIDULONG_PTR th32DefaultHeapID; //0DWORD th32Modu
2012-01-12 14:53:56 6088
利用API hook拦截技术监视文件操作.pdf
2011-02-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人