使用Shell脚本在子目录中运行make文件

时间:2019-05-30 11:29:14

标签: shell makefile

我需要使用shell在子目录中运行make file_name命令 脚本,然后cd ..离开该子目录,并在主目录中运行其余命令。

2 个答案:

答案 0 :(得分:2)

您可以从父目录运行make,而无需先切换到子目录:

make -C subdir file_name

答案 1 :(得分:1)

假设脚本最初在“主目录”中运行,只需将cd转到子外壳中的子目录即可。例如

#!/bin/sh

# do stuff in main directory
( cd subdir; make file_name ) # use a subshell 
# now run more commands in the main directory

您还可以使用pushdpopd,或尝试存储$(pwd),或仅使用cd ..,但是子shell通常是最干净的解决方案。