1. 创建一个脚本a,内容如下:
- #!/bin/sh
- #filename: a
- exit 22
2. 创建一个c语言程序1.C,调用该脚本,通过system的返回值来判断是否执行脚本成功.
- #include <stdio.h>
- #include <stdlib.h>
- #include <iostream.h>
- int main()
- {
- int nRes = system("a");
- nRes = nRes >> 8;
- cout<<nRes<<endl;
- return 1;
- }
通过: g++ -o test 1.C得到可执行文件:test.
执行:./text后得到的结果就是: 22.
3. 修改脚本a,在a中实现文件拷贝的功能,如果拷贝不成功,则出现一个自定义的提示.
- #!/bin/sh
- #filename: a
- if cp 1.C 2.C > /dev/null 2>
- then
- echo "cp succeed !";
- else
- echo "`basename $0`: cp not succeed !";
- fi
执行text,得到的结果为:
cp succeed !
0
如果要拷贝的文件为3.C,该文件是一个不存在的文件,如下所示:
- #!/bin/sh
- #filename: a
- if cp 3.C 2.C > /dev/null 2>
- then
- echo "cp succeed !";
- else
- echo "`basename $0`: cp not succeed !";
- exit 1;
- fi
那么执行./test后得到的结果就是:
a: cp not succeed !
1
通过上面的操作我们知道了if在测试返回值的时候: 0表示真;1表示假.