仅显示当前目录,而不是所有路径,并在 makefile 中使用它们到 tar in c
Show only current directory, not all path and use them in makefile to tar in c
我想创建 "make tar" 以从目录创建 tar.gz 文件
我这样做
KATBIEZ = `basename $(PWD)`
然后我清理因为我不想有 .o i .x 文件,只有 c
clean:
rm -f a.out *~ *.o *.x
这是我做的 tar
tar: clean
(cd ..; tar cvzf $(KATBIEZ).tar.gz $(KATBIEZ); ls -altr)
问题是在 $(KATBIEZ) 中我有例如 "home/Mark/New_Folder/Program10" 我只想有 Program10/
所以不用
cd ..; tar cvzf `basename home/Mark/New_Folder/Program10`.tar.gz `basenamehome/Mark/New_Folder/Program10`; ls -altr
我想要
cd ..; tar cvzf Program10.tar.gz Program10/; ls -altr
你有什么想法吗?
你需要的是 运行 basename
:
KATBIEZ=$(shell basename "$(PWD)")
要排除故障,运行 这个 makefile :
KATBIEZ=$(shell basename "$(PWD)")
tar:
( cd ..; echo tar cvzf "$(KATBIEZ).tar.gz" "$(KATBIEZ)"; ls -altr )
并粘贴结果。
我想创建 "make tar" 以从目录创建 tar.gz 文件 我这样做
KATBIEZ = `basename $(PWD)`
然后我清理因为我不想有 .o i .x 文件,只有 c
clean:
rm -f a.out *~ *.o *.x
这是我做的 tar
tar: clean
(cd ..; tar cvzf $(KATBIEZ).tar.gz $(KATBIEZ); ls -altr)
问题是在 $(KATBIEZ) 中我有例如 "home/Mark/New_Folder/Program10" 我只想有 Program10/
所以不用
cd ..; tar cvzf `basename home/Mark/New_Folder/Program10`.tar.gz `basenamehome/Mark/New_Folder/Program10`; ls -altr
我想要
cd ..; tar cvzf Program10.tar.gz Program10/; ls -altr
你有什么想法吗?
你需要的是 运行 basename
:
KATBIEZ=$(shell basename "$(PWD)")
要排除故障,运行 这个 makefile :
KATBIEZ=$(shell basename "$(PWD)")
tar:
( cd ..; echo tar cvzf "$(KATBIEZ).tar.gz" "$(KATBIEZ)"; ls -altr )
并粘贴结果。