海康linux笔试题

1.请列举主流的linux发布版本(至少4个以上)
Redhat Debian  Fedora  Centos Ubuntu
 
2.Makefile的基本写法,完成将test.c文件编译成可执行文件test的Makefile文件
CC=gcc
CFLAGS=-Wall

OBJPATH=                                # .d文件和.o文件保存路径
TARGET=test                            # 最终可执行文件

default: $(TARGET)

SOURCE=test.c                          # 须要编译的.c文件
INCLUDE=

# 获取.d文件名集合
DEPS=$(addprefix $(OBJPATH)/, $(patsubst %.c, %.d, $(filter %.c, $(SOURCE))))
# 获取.o文件名集合
OBJS=$(addprefix $(OBJPATH)/, $(addsuffix .o, $(basename $(SOURCE))))

-include $(DEPS)

# 生成.d文件
$(OBJPATH)/%.d: %.c
  $(CC) $(INCLUDE) -MM $< | sed "1s|^|$(dir $@)|" |"
  sed "1{x;s|.*|$@: $<|;G;}" > $(basename $@).d

# 生成.o文件
$(OBJPATH)/%.o : %.c
  $(CC) $(CFLAGS) -o $@ -c $<

# 连接成可执行文件
$(TARGET): $(OBJS)
  $(CC) $(CFLAGS) -o $@ $^

# 清理
clean:
  rm -rf $(OBJPATH)/*.d $(OBJPATH)/*.o $(TARGET)
上面的程序可谓之写makefile的一个模板
还有一个牛x的网站的介绍一下
http://www.linuxsir.org/main/doc/gnumake/GNUmake_v3.80-zh_CN_html/index.html#content

3.Linux的基本命令,在控制台root根目录下,查找包含字符“hikvision”的文件名,要求使用管道命令包含子目录查找
ls -l  | grep hikvision
 
4.列出当今linux系统下最主流的两大桌面环境,并列出二者之间的主要区别
GNOME   KDE ;区别?不知道
 
5.列出linux系统下主要的三类设备文件系统
字符设备 块设备 网络设备
相关文章
相关标签/搜索