一个shell文件的分析记录
来源:互联网 发布:电脑怎么没网络了 编辑:程序博客网 时间:2024/04/26 01:58
make 2>&1 |tee err.log //综合一下的说明,该句的执行过程是 执行make 是将标准错误输出到标准输出中,并复制到err文件中
在shell中,文件描述符通常是:STDIN,STDOUT,STDERR,即:0,1,2,由此可以看出,
2>&1 means redirect stderr to stdout.2是标准错误,&1是标准输出,2>&1意思就是将标准错误输出到标准输出中。
扩展学习笔记:
tee 命令
用途:显示程序的输出并将其复制到一个文件中。
语法:tee [ -a ] [ -i ] [ File ... ]
描述:tee 命令读取标准输入,然后将程序的输出写到标准输出,并同时将其复制到指定的一个或多个文件。
标志
-a 将输出添加到 File 的末尾而不是覆盖写入。
-i 忽略中断。
退出状态
命令返回以下退出值:
0 标准输入被成功地复制到所有输出文件中。
>0 发生错误。
注:如果向任意成功打开的File操作数的写入不成功,写入其它成功打开的File操作数,并且标准输出会继续,但是退出值将会是>0。
echo "arm-linux-strip fhwmain"
arm-linux-strip bin/fhwmain // arm-linux-strip是减肥工具而不是压缩工具, 是将make完了以后的程序fhwmain文件,去掉elf可执行的文件信息
下面的表格总结的很好:转http://blog.chinaunix.net/space.php?uid=20564848&do=blog&id=73976
名称
归属
作用
arm-linux-as
binutils
编译ARM汇编程序
arm-linux-ar
binutils
把多个.o合并成一个.o或静状库(.a)
arm-linux-ranlib
binutils
为库文件建立索引,相当于: arm-linux-ar –s
arm-linux-ld
binutils
连接器(Linker),把多个.o或库文件连接成一个可执行文件
arm-linux-objdump
binutils
查看目标文件(.o)和库(.a)的信息
arm-linux-objcopy
binutils
转换可执行文件的格式
arm-linux-strip
binutils
去掉elf可执行文件的信息,使可执行文件变小
arm-linux-readelf
binutils
读elf可执行文件的信息
arm-linux-gcc
gcc
编译.c或.S的C程序或汇编程序
arm-linux-g++
gcc
编译c++程序
#echo "cp *"
rm -f fhwgroup/lib/* //删除fhwgroup/lib/文件下面的所有文件内容
cp -f lib/*.so fhwgroup/lib/ //拷贝lib/的所有.so文件到,fhwgroup/lib/ 下
cp -f bin/fhwmain ./fhwgroup/ //将bin/fhwmain 文件,拷贝到./fhwgroup/目录下
echo "rm fhwgroup.tgz"
rm -f fhwgroup.tgz //删除原有的文件 fhwgroup.tgz
echo "tar zcvf fhwgroup.tgz fhwgroup/"
tar zcvf fhwgroup.tgz fhwgroup///将 fhwgroup/ 目录打包成 fhwgroup.tgz 格式
tar几个参数的说明:
-z 用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。
-c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。
-v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。
-f 使用档案文件或设备,这个选项通常是必选的。
echo "chmod 777 fhwgroup.tgz"
chmod 777 fhwgroup.tgz //修改压缩后文件的执行权限
Linux命令——chmod
命令描述
变更文件或目录的权限。在UNIX系统家族里,文件或目录权限的控制分别以读取,写入,执行3种一般权限来区分,另有3种特殊权限可供运用,再搭配拥有者与所属群组管理权限范围。您可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。符号连接的权限无法变更,如果您对符号连接修改权限,其改变会作用在被连接的原始文件。权限范围的表示法如下: u:User,即文件或目录的拥有者。 g:Group,即文件或目录的所属群组。 o:Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围。 a:All,即全部的用户,包含拥有者,所属群组以及其他用户。 有关权限代号的部分,列表于下: r:读取权限,数字代号为"4"。 w:写入权限,数字代号为"2"。 x:执行或切换权限,数字代号为"1"。 -:不具任何权限,数字代号为"0"。 s:特殊?b>功能说明:变更文件或目录的权限。语法
chmod [-cfRv][--help][--version][<权限范围>+/-/=<权限设置...>][文件或目录...] chmod [-cfRv][--help][--version][数字代号][文件或目录...] chmod [-cfRv][--help][--reference=<参考文件或目录>][--version][文件或目录...]选项说明
-c或--changes 效果类似"-v"参数,但仅回报更改的部分。 -f或--quiet或--silent 不显示错误信息。 -R或--recursive 递归处理,将指定目录下的所有文件及子目录一并处理。 -v或--verbose 显示指令执行过程。 --help 在线帮助。 --reference=<参考文件或目录> 把指定文件或目录的权限全部设成和参考文件或目录的权限相同 --version 显示版本信息。 <权限范围>+<权限设置> 开启权限范围的文件或目录的该项权限设置。 <权限范围>-<权限设置> 关闭权限范围的文件或目录的该项权限设置。 <权限范围>=<权限设置> 指定权限范围的文件或目录的该项权限设置。- 一个shell文件的分析记录
- 一个蓝屏记录文件(DMP)分析
- 一个shell脚本的分析(1)
- 一个shell脚本的分析(2)
- 一个shell脚本的分析(3)
- 一个文本抽取分析的shell程序
- shell 中生成一个文件的办法
- 一个安全删除文件的shell命令
- linux shell 模仿写的一个唱片记录系统
- 使用shell守护node.js进程的一个记录
- 分析ip访问次数的记录文件
- 记录一个文件读取的Bug
- linux中Shell历史命令记录文件的路径是什么
- shell脚本统计文件的记录条数
- 变长记录文件分析
- shell的一些记录
- 记录Shell的点滴
- 一个时序混乱导致的bug分析过程记录
- C++的四种cast操作符的区别--类型转换
- Tomcat 配置Manager用户名与密码
- 怎么会有这样的代码
- 使用Spinner和setDropDownViewResource
- 更改android锁屏方向
- 一个shell文件的分析记录
- 大家这么热情,我就献丑了 -- 我的iPhone软件
- linux2.6.36文件系统分析---sys_mount()
- 通过PHP控制缓冲区来实现的应用
- 复习啦
- xcode4.2手动添加MainWindow.xib
- itest Tutorial
- 打开ppp packet打印
- 我的js学习笔记之第一阶段总结即小作业贪吃蛇V0.1