makefile中这句话什么意思啊
问题描述:
makefile中这句话什么意思啊
System.map:hello.or32
\x05@$(NM) $\x05\x05grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \
\x05\x05sort > System.map
答
System.map: hello.or32 这句意思是生成System.map文件源自于hello.or32文件,下面的部分是方法说明
@是隐式输出这条语句的意思,即屏幕上看不到这条语句,去掉之,可见这条语句
NM 是环境变量或在这语句前定义的一个宏变量
$| 是管道关于管道请查相应的资料, 简单说,就是|前面的语句的输出 是 其后的语句的输入
\ 是行连接符,意思是这一行写不下了,下一行和这一行的信息应该连在一起作为一行信息
grep -v 是查找时滤掉后面的信息 即' '中的内容 引号中的\这里是转义的意思,即不把\后面的当作命令信息解释,
说白了,就是过滤掉 (compiled)|(.o$$)|( [aUw] )|(..ng$$)|(LASH[RL]DI) 这样的内容行
sort > System.map 意思就是将前面的输出进行排序,并将排序结果输出到System.map文件中