社区
Linux/Unix社区
帖子详情
$(shell pwd)和$(pwd)有什么区别
heytry4
2011-01-09 11:59:56
俺在一个Makefile中看到这样的语句$(shell pwd)
俺知道$(pwd)是执行pwd这条指令, 但不清楚$(shell pwd)中的shell有什么用,请高手帮忙.
...全文
27724
9
打赏
收藏
$(shell pwd)和$(pwd)有什么区别
俺在一个Makefile中看到这样的语句$(shell pwd) 俺知道$(pwd)是执行pwd这条指令, 但不清楚$(shell pwd)中的shell有什么用,请高手帮忙.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chenzhengnan
2012-08-16
打赏
举报
回复
非常感谢
dengqianyi
2012-04-26
打赏
举报
回复
学习了,非常感谢
zcf_tarena
2012-04-17
打赏
举报
回复
非常感谢
azhujudah
2011-08-01
打赏
举报
回复
非常感謝!!
knief不懂就问
2011-06-27
打赏
举报
回复
同感谢
heytry4
2011-01-10
打赏
举报
回复
非常感謝
bluejays
2011-01-10
打赏
举报
回复
1
这个shell应该是make里面的一个函数。
从著名的《跟我一起写 Makefile》里面找到这么一段:
八、shell函数
shell函数也不像其它的函数。顾名思义,它的参数应该就是操作系统Shell的命令。它和反引号“`”是相同的功能。这就是说,shell函数把执行操作系统命令后的输出作为函数返回。于是,我们可以用操作系统命令以及字符串处理命令awk,sed等等命令来生成一个变量,如:
contents := $(shell cat foo)
files := $(shell echo *.c)
注意,这个函数会新生成一个Shell程序来执行命令,所以你要注意其运行性能,如果你的Makefile中有一些比较复杂的规则,并大量使用了这个函数,那么对于你的系统性能是有害的。特别是Makefile的隐晦的规则可能会让你的shell函数执行的次数比你想像的多得多。
bluejays
2011-01-10
打赏
举报
回复
Makefile里面好像必须加shell,直接用$(pwd)好象不行。
我刚才试了一下,把这几行保存成Makefile,然后make可以看到结果
P=$(shell pwd) # 这样可以输出路径
#P=$(pwd) # 这样没有输出
all:
echo $P
柔性电力系统中油浸式变压器的最佳老化极限研究(Matlab代码实现)
柔性电力系统中油浸式变压器的最佳老化极限研究(Matlab代码实现)
李兰 系统预算调整及POR申请关联问题点整理-5.21.csv 的副本.xlsx
李兰 系统预算调整及POR申请关联问题点整理-5.21.csv 的副本.xlsx
FONT4.rar
CAD缺少相关字体时,图纸中的文字会出现缺失或乱码。下载所需字体并复制到 AutoCAD 的 Fonts 文件夹后,即可正常显示。
机械毕业设计 二级展开式圆柱齿轮减速器设计【设计说明书+CAD图纸+SW三维+STEP】.rar
机械毕业设计 二级展开式圆柱齿轮减速器设计【设计说明书+CAD图纸+SW三维+STEP】.rar
C#实现videoSourcePlayer拍照录像
已经博主授权,源码转载自 https://pan.quark.cn/s/e6d2e9b5b6fa ### C# 通过 videoSourcePlayer 控件达成拍照与录像操作指南#### 一、视频源控件(videoSourcePlayer)概述在 C# 编程环境中,`videoSourcePlayer` 控件是一种用于捕捉视频流的强效组件,它使得开发者能够借助简洁的代码对摄像头进行操作,涵盖视频的播放、暂停以及静态图像的获取等操作。该控件基于 DirectShow 技术,适用于多种视频输入设备,包括 USB 摄像头、网络摄像头等。#### 二、核心代码阐释与功能达成在所提供的代码段中,主要达成了以下几个功能:1. **摄像头的初始化**:在窗体加载时暂停视频播放,并重新配置摄像头。2. **摄像头设备的选取**:提供用户选择不同视频输入设备的机会,并将其设定为视频源。3. **拍照操作**:当用户点击拍照按钮时,捕获当前的视频帧并将其转化为图片格式存储。##### 1. 摄像头的初始化```csharpprivate void frmjs_hjAdd_Load(object sender, EventArgs e){ videoSourcePlayer1.Pause(); btn_getdevice_Click(null, null); // ...}private void frmjs_hjAdd_FormClosed(object sender, FormClosedEventArgs e){ videoSourcePlayer1.Pause(); videoSourcePlayer1.ReleaseResources();}```**阐释**:- `videoSo...
Linux/Unix社区
23,223
社区成员
74,536
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章