导航:首页 > 操作系统 > linuxc笔试题

linuxc笔试题

发布时间:2022-11-03 04:42:30

linux c语言 char char_recv[100] = “1,2,3,4,5“ 我想单独获取这些数据并赋值给 a,b,c,d,e应该怎么做

a=char_recv[0];
b=char_recv[1];
c=char_recv[2];
d=char_recv[3];
e=char_recv[4];

❷ linux C编程

1.
我调试的时候就已经出现错误了,提示如下:
(gdb)
print
*p
Cannot
access
memory
at
address
0xbffff328
//
等到执行
*p
=
3;
这一句的时候,就出现如下错误
Program
terminated
with
signal
SIGSEGV,
Segmentation
fault.
2.
可见
0xbffff328这段区域不能访问。lz是想测试什么吗?
3。
如果问题可追问

❸ 新浪公司系统工程师笔试题,关于Linux的,求解答。

1. 第一问,你题目不具体,不好讲。不过可以给你一个提示,SSH是可以连接到远程机子并执行命令并把命令结果返回。
比如我在windows下利用putty中的pline.exe做,就是这样:
C:\PuTTY>PLINK.EXE -ssh -pw "240admin" [email protected] ls /
FTP_HOME
bin
boot
dev
etc
home
initrd
lib
lost+found
media
misc
mnt
opt
proc
root
sbin
selinux
srv
sys
test
tmp
usr
var

C:\PuTTY-v0.60>

linux下等效的命令是
ssh -i 身份验证文件 [email protected] ls /

2. 对于第二问,确实用awk最方便。手头上没有http日志,你给的也不全,所以没办法写。不过基本上可以采用这样的(随手写,没调试过,假设IP访问量是在第8个字段,IP是第9个字段)

cat logfile | awk 'BEGIN{top=0;Ipaddr="";}NR<=10{if top<$8 {top=$8;ipaddr=$9}END{printf "%s %s",top,ipaddr;}'

BEGIN是AWK开始时执行,NR<=10表示只要前10行(NR是内部变量),然后每一个数据流来到时就处理NR<=10后面、END前面的语句(所以不要奇怪为什么不需要for语句
AWK结束时执行END后面的语句既出10个记录中IP访问数最多的

下面给一个简单的例子,来说明我是如何地把/etc/passwd中前19个用户名(不排序)选出来:
root@localhost# cat /etc/passwd | awk -F: 'NR<20{printf "%s\n",$1;}'
root
bin
daemon
adm
mail
ftp
nobody
dbus
vcsa
rpm
haldaemon
netmp
nscd
sshd
rpc
mailnull
smmsp
rpcuser
nfsnobody

root@localhost#

❹ linux c program problem error: 'O_CREAT' undeclared (first use in this function);

O_CREAT 本来就不是在fcntl.h 中定义的,open函数执行时候还会调用其他的库函数,这本身不是问题所在,我按你的程序编译了一下,没有任何报错,可能是编译器的事,我用的是linux下的gcc,我记得以前好像也遇到过你这种问题,后来升级了一次发行版,就ok了,我想应该是编译器的问,你的程序本身没有问题,这我可以肯定 ,除了exit(0) 中的那个问题,那个是0,不是o,我想这是你的笔误

❺ linux c编程

/*
Name: list.c
Author: guozan _SCS_BUPT
Mail: [email protected]
Date: 2010/4/6
实验目的:练习vi,使用UNIX的系统调用和库函数,体会UNIX文件通配符的处理方式以及命令对选项的处理方式。
编程实现程序list.c,列表普通磁盘文件(不考虑目录和设备文件等),列出文件名和文件大小。
与ls命令类似,命令行参数可以有0到多个
0个参数:列出当前目录下所有文件
参数为普通文件:列出文件
参数为目录:列出目录下所有文件
实现自定义选项r,a,l,h,m以及--
r 递归方式列出子目录
a 列出文件名第一个字符为圆点的普通文件(默认情况下不列出文件名首字符为圆点的文件)
l 后跟一整数,限定文件大小的最小值(字节)
h 后跟一整数,限定文件大小的最大值(字节)
m 后跟一整数n,限定文件的最近修改时间必须在n天内
-- 显式地终止命令选项分析
*/
#include <sys/stat.h>
#include <sys/types.h>
#include <dirent.h>
#include <unistd.h>
#include <stdio.h>
#include <string.h>
/*
slective options about ls
rflag is about recursive
aflag is about ones with . infront
lflag is about the minimum size
hflag is about the maximum size
mflag is about the modified time
*/
int rflag, aflag, lflag, hflag, mflag;
long modified_time; //the last time file be modified, days ago
off_t lower_size; //file's minimum size
off_t upper_size; //file's maximum size
/*
set the flags, thus the ls option
*/
void getoptions(int argc, char *argv[])
{
char ch;
//clear, all unseted
rflag = 0; aflag = 0; lflag = 0; hflag = 0; mflag = 0;
//use getopt to get the options, want to know more, call man
//the last one or after -- was set in argv[optind]
while ((ch = getopt(argc, argv, "ral:h:m:")) != -1) {
switch (ch) {
case 'r': rflag = 1; break;
case 'a': aflag = 1; break;
case 'l': lflag = 1; lower_size = atol(optarg); break;
case 'h': hflag = 1; upper_size = atol(optarg); break;
case 'm': mflag = 1; modified_time = atol(optarg); break; //get days
case '?': printf("Unknown option: %c\n", (char)optopt); break;
default : printf("Step into default\n"); break;
}
}
}
/*
the function to list things in path
*/
int ls(char *path)
{
struct stat st; //for check this is a directory or file
char temp[100]; //if path is null, it is used to get current directory
// get the path
if (path == NULL || path[0] == '-') {
path = temp;
getcwd(path, 100);
}
/* open the inode of file */
if (lstat(path, &st)) {
fprintf(stderr, "Error: %s not exist.\n", path);
return (-1);
}
/* judge whether the file is a file or a directory */
if (S_ISDIR(st.st_mode)) {
ls_dir(path);
}
else if (S_ISREG(st.st_mode)) {
print(path);
}
else {
printf("Not ordinary file, wouldn't be listed.\n");
}
return 0;
}
/*
list dirs, may recursively or not, depending on rflag
one thing is sure that it will list directories and files first,
then consider the things in the directories
*/
int ls_dir(char *path)
{
DIR *dp = NULL;
struct dirent *dirp = NULL;
if (path[0] != '.' || (path[0] == '.' && aflag == 1)) {
printf("\n%s:\n****************************************\n", path);
/* open the directory */
if ((dp = opendir(path)) == NULL) {
fprintf(stderr, "Error: can't open directory %s!\n", path);
return (-1);
}
chdir(path);
/* list all the things in directory */
while ((dirp = readdir(dp)) != NULL) {
print(dirp->d_name);
}
/* recursively ls dirs, after ls things together,
it's time to list things in children directory */
if (rflag == 1) {
rewinddir(dp); //reset dp
while ((dirp = readdir(dp)) != NULL) {
if (strcmp(dirp->d_name, ".") == 0
|| strcmp(dirp->d_name, "..") == 0) { //no current and parent directory
continue;
}
ls_dir_r(dirp->d_name); //only list directories, judged inside the function
}
}
/* close the directory */
if (closedir(dp)) {
fprintf(stderr, "Error: can't close the directory %s!\n", path);
return -1;
}
chdir("..");
}
return 0;
}
/*
list directories recursively,
only directories, nomatter what path you put in
*/
int ls_dir_r(char *path)
{
struct stat st;
/* open the inode of file */
if (lstat(path, &st)) {
fprintf(stderr, "Error: %s not exist.\n", path);
return (-1);
}
/* only ls directories */
if (S_ISDIR(st.st_mode)) {
ls_dir(path);
}
}
/*
print the filetype/size/name on the screen
*/
int print(char *path)
{
struct stat st;
time_t tp;
char *filename = NULL;
//get current time
time(&tp);
if (lstat(path, &st)) {
fprintf(stderr, "Error: %s can't be opened.\n", path);
return (-1);
}
/* get file name */
if ((filename = strrchr(path, '/')) != NULL) {
filename++;
}
else {
filename = path;
}
/* judge whether to list the file */
if ((S_ISDIR(st.st_mode)|| S_ISREG(st.st_mode)) //only directories and normal files
&& (lflag == 0 || (lflag == 1 && (st.st_size >= lower_size))) //the min size
&& (hflag == 0 || (hflag == 1 && (st.st_size <= upper_size))) //the max size
&& (mflag == 0 || (mflag == 1 && ((tp - st.st_mtime) <= modified_time * 24 * 60 * 60))) //modified time
&& (aflag == 1 || (aflag == 0 && filename[0] != '.')) //file with a '.' infront
) {
printf("%s\t%10ld\t%s\n", (S_ISDIR(st.st_mode) ? "DIR": "FILE"), st.st_size, filename);
}
return 0;
}
/*
The main function
*/
int main(int argc, char *argv[])
{
getoptions(argc, argv);
ls(argv[optind]);
return 0;
}

❻ Linux用c语言编程一个计算机程序,用户输入两个数后,输出加减乘除的各个结果

intmain(){
floata,b,res;
charop[]="+-*/",*p=op;
scanf("%f%f",&a,&b);
while(*p){
switch(*p){
case'+':res=a+b;break;
case'-':res=a+b;break;
case'*':res=a+b;break;
case'/':if(b)res=a/b;break;
}
printf("%f%c%f=%f ",a,*p,b,res);
p++;
}
return0;
}

❼ linux下c语言编程

实在点,给你些命令操作操作,不过好象有点多,哈哈
Linux/Unix常用命令
1、目录操作
和DOS相似,UNIX采用树型目录管理结构,由根目录(/)开始一层层将子目录建下去,各子目录以 / 隔开。用户login后,工作目录的位置称为 home directory,由系统管理员设定。‘~’符号代表自己的home directory,例如 ~/myfile 是指自己home目录下myfile这个文件。
(1)显示目录文件 ls
执行格式: ls [-atFlgR] [name] (name可为文件或目录名称)
例: ls 显示出当前目录下的文件
ls -a 显示出包含隐藏文件的所有文件
ls -t 按照文件最后修改时间显示文件
ls -F 显示出当前目录下的文件及其类型
ls -l 显示目录下所有文件的许可权、拥有者、文件大小、修改时间及名称
ls -lg 同上
ls -R 显示出该目录及其子目录下的文件
注:ls与其它命令搭配使用可以生出很多技巧(最简单的如"ls -l | more"),更多用法请输入ls --help查看,其它命令的更多用法请输入 命令名 --help 查看.

(2)建新目录 mkdir
执行格式: mkdir directory-name
例: mkdir dir1 (新建一名为dir1的目录)
(3)删除目录 rmdir
执行格式: rmdir directory-name 或 rm directory-name
例:rmdir dir1 删除目录dir1,但它必须是空目录,否则无法删除
rm -r dir1 删除目录dir1及其下所有文件及子目录
rm -rf dir1 不管是否空目录,统统删除,而且不给出提示,使用时要小心

(4) 改变工作目录位置 cd
执行格式: cd [name]
例: cd 改变目录位置至用户login时的working directory
cd dir1 改变目录位置,至dir1目录
cd ~user 改变目录位置,至用户的working directory
cd .. 改变目录位置,至当前目录的上层目录
cd ../user 改变目录位置,至上一级目录下的user目录
cd /dir-name1/dir-name2 改变目录位置,至绝对路径(Full path)
cd - 回到进入当前目录前的上一个目录

(5)显示当前所在目录pwd
执行格式: pwd
(6)查看目录大小
执行格式: [-s] directory
例: dir1 显示目录dir1及其子目录容量(以kb为单位)
-s dir1 显示目录dir1的总容量
(7)显示环境变量
echo $HOME 显示家目录
echo $PATH 显示可执行文件搜索路径
env 显示所有环境变量(可能很多,最好用"env | more","env | grep PATH"等)
(8)修改环境变量,在bash下用export,如:
export PATH=$PATH:/usr/local/bin
想知道export的具体用法,可以用shell的help命令:help export
2、文件操作
(1)查看文件(可以是二进制的)内容 cat
执行格式:cat filename或more filename 或cat filename|more
例: cat file1 以连续显示方式,查看文件file1的内容
more file1
或 cat file1|more 以分页方式查看文件的内容
(2)删除文件 rm
执行格式: rm filename
例: rm file?
rm f*
(3)复制文件 cp
执行格式: cp [-r] source destination
例: cp file1 file2 将file1复制成file2
cp file1 dir1 将file1复制到目录dir1
cp /tmp/file1 将file1复制到当前目录
cp /tmp/file1 file2 将file1 复制到当前目录名为file2
cp -r dir1 dir2 (recursive )复制整个目录。
(4)移动或更改文件、目录名称mv
执行格式: mv source destination
例: mv file1 file2 将文件file1,更名为file2
mv file1 dir1 将文件file1,移到目录dir1下
mv dir1 dir2
(5)比较文件(可以是二进制的)或目录的内容 diff
执行格式: diff [-r] name1 name2 (name1、name2同为文件或目录)
例: diff file1 file2 比较file1与file2的不同处
diff -r dir1 dir2 比较dir1与dir2的不同处
(6)文件中字符串的查找 grep
执行格式: grep string file
例: grep abc file1 查找并列出串abc所在的整行文字
(7)文件或命令的路径寻找
执行格式一:whereis command 显示命令的路径
执行格式二:which command 显示路径及使用者所定义的别名
执行格式三:whatis command 显示命令的功能摘要

(8)建立文件或目录的链接 ln
例: ln source target1 建立source文件(已存在)的硬链接,命名为target1
ln -s source target2 建立source文件的符号链接,命名为target2

文件编辑器vi
vi是在UNIX 上被广泛使用的中英文编辑软件。vi是visual editor的缩写,是UNIX提供给用户的一个窗口化编辑环境。
进入vi,直接执行vi编辑程序即可。
例:$vi test.c
显示器出现vi的编辑窗口,同时vi会将文件复制一份至缓冲区(buffer)。vi先对缓冲区的文件进行编辑,保留在磁盘中的文件则不变。编辑完成后,使用者可决定是否要取代原来旧有的文件。
1、vi的工作模式
vi提供二种工作模式:输入模式(insert mode)和命令模式(command mode)。使用者进入vi后,即处在命令模式下,此刻键入的任何字符皆被视为命令,可进行删除、修改、存盘等操作。要输入信息,应转换到输入模式。
(1)命令模式
在输入模式下,按ESC可切换到命令模式。命令模式下,可选用下列指令离开vi:
:q! 离开vi,并放弃刚在缓冲区内编辑的内容
:wq 将缓冲区内的资料写入磁盘中,并离开vi
:ZZ 同wq
:x 同wq
:w 将缓冲区内的资料写入磁盘中,但并不离开vi
:q 离开vi,若文件被修改过,则要被要求确认是否放弃修改的内容,此指令可与:w配合使用

(2)命令模式下光标的移动
H 左移一个字符
J 下移一个字符
K 上移一个字符
L 右移一个字符
0 移至该行的首
$ 移至该行的末
^ 移至该行的第一个字符处
H 移至窗口的第一列
M 移至窗口中间那一列
L 移至窗口的最后一列
G 移至该文件的最后一列
W, W 下一个单词 (W 忽略标点)
B, B 上一个单词 (B 忽略标点)
+ 移至下一列的第一个字符处
- 移至上一列的第一个字符处
( 移至该句首
) 移至该句末
{ 移至该段首
} 移至该段末
NG 移至该文件的第n列
N+ 移至光标所在位置之后第n列
n- 移至光标所在位置之前第n列

(3)输入模式
输入以下命令即可进入vi输入模式:
a(append) 在光标之后加入资料
A 在该行之末加入资料
i(insert) 在光标之前加入资料
I 在该行之首加入资料
o(open) 新增一行于该行之下,供输入资料用
O 新增一行于该行之上,供输入资料用
dd 删除当前光标所在行
X 删除当前光标字符
x 删除当前光标之前字符
U 撤消
• 重做
F 查找

ESC键 离开输入模式

GNU C编译器
LINUX上可用的C编译器是GNU C编译器,它建立在自由软件基金会编程许可证的基础上,因此可以自由发布。
LINUX 上的GNU C编译器(GCC)是一个全功能的ANCI C兼容编译器。下面介绍GCC和一些GCC编译器最常用的选项。
1、使用GCC
通常后跟一些选项和文件名来使用GCC编译器。GCC命令的基本用法如下:
gcc [options] [filenames]
命令行选项指定的编译过程中的具体操作
2、GCC常用选项
GCC有超过100个的编译选项可用,这些选项中的许多可能永远都不会用到,但一些主要的选项将会频繁使用。很多的GCC选项包括一个以上的字符,因此必须为每个选项指定各自的连字符,并且就像大多数LINUX 命令一样不能在一个单独的连字符后跟一组选项。例如:
gcc test.c
编译成功后,当前目录下就产生了一个可执行文件a.out。
也可用-o选项来为即将产生的可执行文件指定一个文件名来代替a.out。例如:
gcc -o count count.c
此时得到的可执行文件就不再是a.out,而是count。
3、执行文件
格式: ./可执行文件名
例:./a.out
./count

❽ 关于linuxC socket的一道题

服务器端代码
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <sys/socket.h>
#include <sys/wait.h>

#define SERVPORT 7 /*服务器监听端口号 */
#define BACKLOG 10 /* 最大同时连接请求数 */
#define BUFF_SIZE 1024

void main()
{
int sockfd,client_fd; /*sock_fd:监听socket;client_fd:数据传输socket */
struct sockaddr_in6 my_addr; /* 本机地址信息 */
struct sockaddr_in6 remote_addr; /* 客户端地址信息 */
if ((sockfd = socket(AF_INET6, SOCK_STREAM, 0)) == -1)
{
perror("socket创建出错!"); exit(1);
}
bzero(&my_addr, sizeof(my_addr));
my_addr.sin6_family=AF_INET6;
my_addr.sin6_port=htons(SERVPORT);
my_addr.sin6_addr = in6addr_any;
if (bind(sockfd, (struct sockaddr *)&my_addr, sizeof(struct sockaddr_in6)) == -1)
{
perror("bind出错!");
exit(1);
}
if (listen(sockfd, BACKLOG) == -1) {
perror("listen出错!");
exit(1);
}
while(1) {
int sin_size = sizeof(struct sockaddr_in);
char temp[INET6_ADDRSTRLEN];
if ((client_fd = accept(sockfd, (struct sockaddr *)&remote_addr, &sin_size)) == -1) {
perror("accept出错");
continue;
}
printf("received a connection from %s\n", inet_ntop(AF_INET6, remote_addr.sin6_addr, temp, sizeof(temp)));
if (!fork()) { /* 子进程代码段 */
char buffer[BUFF_SIZE];
int len = recv(client_fd, buffer, BUFF_SIZE, 0);

while(len > 0)
{
if (send(client_fd, buffer, len, 0) == -1)
{
perror("unable to send!");
close(client_fd);
exit(1);
}
len = recv(client_fd, buffer, BUFF_SIZE, 0);
}
close(client_fd);
exit(0);
}
close(client_fd);
}
}

客户端
#include<stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <netdb.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <sys/socket.h>

#define BUFF_SIZE 1024

void main(int argc, char *argv[])
{
int sockfd, len, recv_len;
char buf[BUFF_SIZE];
struct sockaddr_in6 serv_addr;
if (argc != 3)
{
fprintf(stderr,"Usage: %s dstip dstport\n", argv[0]);
exit(1);
}

if ((sockfd = socket(AF_INET6, SOCK_STREAM, 0)) == -1){
perror("socket 创建出错!");
exit(1);
}

bzero(&serv_addr, sizeof(serv_addr));
serv_addr.sin6_family=AF_INET6;
serv_addr.sin6_port=htons(atoi(argv[2]));
if (inet_pton(AF_INET6, argv[1], &serv_addr.sin6_addr) < 0)
{
perror(argv[1]);
exit(1);
}

if (connect(sockfd, (struct sockaddr *)&serv_addr, \
sizeof(struct sockaddr)) == -1) {
perror("connect出错!");
exit(1);
}

printf("sendmsg> ");
gets(buf);

len = send(sockfd, buf, strlen(buf), 0);
if (len != strlen(buf))
{
perror("failed to send msg!");
exit(1);
}

recv_len = recv(sockfd, buf, len, 0);
if (recv_len != len)
{
perror("received length != send");
exit(1);
}
buf[recv_len] = '\0';
printf("recvmsg> %s\n", buf);
close(sockfd);
}

❾ 100道Linux试题,每题1分,你能答多少分(附答案+教程)

本套笔试题共100题,每题1分,共100分。(参考答案在文章末尾,还有Linux学习资料一起赠送)

1. cron 后台常驻程序 (daemon) 用于:

A. 负责文件在网络中的共享

B. 管理打印子系统

C. 跟踪管理系统信息和错误

D. 管理系统日常任务的调度

2. 在大多数Linux发行版本中,以下哪个属于块设备 (block devices) ?

A. 串行口

B. 硬盘

C. 虚拟终端

D. 打印机

3. 下面哪个Linux命令可以一次显示一页内容?

A. pause

B. cat

C. more

D. grep

4. 怎样了解您在当前目录下还有多大空间?

A. Use df

B. Use /

C. Use .

D. Use df .

5. 怎样更改一个文件的权限设置?

A. attrib

B. chmod

C. change

D. file

6. 假如您需要找出 /etc/my.conf 文件属于哪个包 (package) ,您可以执行:

A. rpm -q /etc/my.conf

B. rpm -requires /etc/my.conf

C. rpm -qf /etc/my.conf

D. rpm -q | grep /etc/my.conf

7. 假如当前系统是在 level 3 运行,怎样不重启系统就可转换到 level 5 运行?

A. Set level = 5

B. telinit 5

C. run 5

D. ALT-F7-5

8. 那个命令用于改变 IDE 硬盘的设置?

A. hdparam

B. ideconfig

C. hdparm

D. hddparm

9. 下面哪个命令可以列出定义在以后特定时间运行一次的所有任务?

A. atq

B. cron

C. batch

D. at

10.下面命令的作用是:set PS1="[\\uw ]\$" ; export PS1

A. 改变错误信息提示

B. 改变命令提示符

C. 改变一些终端参数

D. 改变辅助命令提示符

11.作为一个管理员,你希望在每一个新用户的目录下放一个文件 .bashrc ,那么你应该在哪个目录下放这个文件,以便于新用户创建主目录时自动将这个文件复制到自己的目录下。

A. /etc/skel/

B. /etc/default/

C. /etc/defaults/

D. /etc/profile.d/

12.在bash中,export命令的作用是:

A. 在子shell中运行命令

B. 使在子shell中可以使用命令 历史 记录

C. 为其它应用程序设置环境变量

D. 提供NFS分区给网络中的其它系统使用

13.在使用了shadow口令的系统中,/etc/passwd和/etc/shadow两个文件的权限正确的是:

A. -rw-r----- , -r--------

B. -rw-r--r-- , -r--r--r--

C. -rw-r--r-- , -r--------

D. -rw-r--rw- , -r-----r--

14.下面哪个参数可以删除一个用户并同时删除用户的主目录?

A. rmuser -r

B. deluser -r

C. userdel -r

D. usermgr -r

15.有一个备份程序mybackup,需要在周一至周五下午1点和晚上8点各运行一次,下面哪条crontab的项可以完成这项工作?

A. 0 13,20 * * 1,5 mybackup

B. 0 13,20 * * 1,2,3,4,5 mybackup

C. * 13,20 * * 1,2,3,4,5 mybackup

D. 0 13,20 1,5 * * mybackup

16.如何从当前系统中卸载一个已装载的文件系统

A. umount

B. dismount

C. mount -u

D. 从 /etc/fstab 中删除这个文件系统项

17.如果你的umask设置为022,缺省的你创建的文件的权限为:

A. ----w--w-

B. -w--w----

C. r-xr-x---

D. rw-r--r--

18.在一条命令中如何查找一个二进制命令 Xconfigurator 的路径?

A. apropos Xconfigurator

B. find Xconfigurator

C. where Xconfigurator

D. which Xconfigurator

19.哪一条命令用来装载所有在 /etc/fstab 中定义的文件系统?

A. amount

B. mount -a

C. fmount

D. mount -f

20.运行一个脚本,用户不需要什么样的权限?

A. read

B. write

C. execute

D. browse on the directory

21.在Linux中,如何标识接在IDE0上的slave硬盘的第2个扩展分区?

A. /dev/hdb2

B. /dev/hd1b2

C. /dev/hdb6

D. /dev/hd1b6

22.在应用程序起动时,如何设置进程的优先级?

A. priority

B. nice

C. renice

D. setpri

23.在 bash 中, 在一条命令后加入"1>&2" 意味着:

A. 标准错误输出重定向到标准输入

B. 标准输入重定向到标准错误输出

C. 标准输出重定向到标准错误输出

D. 标准输出重定向到标准输入

24.下面哪条命令可以把f1.txt复制为f2.txt?

A. cp f1.txt | f2.txt

B. cat f1.txt | f2.txt

C. cat f1.txt > f2.txt

D. f1.txt | f2.txt

25.显示一个文件最后几行的命令是:

A. tac

B. tail

C. rear

D. last

26.如何快速切换到用户John的主目录下?

A. cd @John

B. cd #John

C. cd &John

D. cd ~John

27.把一个流中所有字符转换成大写字符,可以使用下面哪个命令?

A. tr a-z A-Z

B. tac a-z A-Z

C.sed /a-z/A-Z

D. sed --toupper

28.使用什么命令可以查看Linux的启动信息?

A. mesg -d

B. dmesg

C. cat /etc/mesg

D. cat /var/mesg

29.运行级定义在:

A. in the kernel

B. in /etc/inittab

C. in /etc/runlevels

D. using the rl command

30.如何装载(mount)上在 /etc/fstab 文件中定义的所有文件系统?

A. mount -a

B. mount /mnt/*

C. mount

D. mount /etc/fstab

31.使用ln命令将生成了一个指向文件old的符号链接new,如果你将文件old删除,是否还能够访问文件中的数据?

A. 不可能再访问

B. 仍然可以访问

C. 能否访问取决于文件的所有者

D. 能否访问取决于文件的权限

32.xt2fs文件系统中,缺省的为root用户保留多大的空间?

A. 3%

B. 5%

C. 10%

D. 15%

33.哪个命令用来显示系统中各个分区中inode的使用情况?

A. df -i

B. df -H

C. free -b

D. -a -c /

34.多数Linux发行版本中,图形方式的运行级定义为?

A. 1

B. 2

C. 3

D. 5

35.在系统文档中找到关于print这个单词的所有说明?

A. man print

B. which print

C. locate print

D. apropos print

36.man 5 passwd 含义是?

A. 显示 passwd 命令的使用方法

B. 显示 passwd 文件的结构

C. 显示 passwd 命令的说明的前五行

D. 显示关于passwd的前五处说明文档。

37.如何在文件中查找显示所有以"*"打头的行?

A. find * file

B. wc -l * < file

C. grep -n * file

D. grep ‘^*’ file

38.在ps命令中什么参数是用来显示所有用户的进程的?

A. a

B. b

C. u

D. x

39.显示二进制文件的命令是?

A. od

B. vil

C. view

D. binview

40.如何显示Linux系统中注册的用户数(包含系统用户)?

A. account -l

B. nl /etc/passwd |head

C. wc --users /etc/passwd

D. wc --lines /etc/passwd

41.在一行结束位置加上什么符号,表示未结束,下一行继续?

A. /

B.

C. ;

D. |

42.命令 kill 9 的含义是:

A. kills the process whose PID is 9.

B. kills all processes belonging to UID 9.

C. sends SIGKILL to the process whose PID is 9.

D. sends SIGTERM to the process whose PID IS 9.

43.如何删除一个非空子目录/tmp?

A. del /tmp/*

B. rm -rf /tmp

C. rm -Ra /tmp/*

D. rm -rf /tmp/*

44.使用什么命令可以在今天午夜运行命令 cmd1 ?

A. at midnight cmd1

B. cron -at "00:00" cmd1

C. batch -t "00:00" < cmd1

D. echo "cmd1" | at midnight

45.你的系统使用增量备份策略,当需要恢复系统时,你需要按什么顺序恢复备份数据?

A. 最后一次全备份,然后从最早到最近的增量备份

B. 最后一次全备份,然后从最近到最早的增量备份

C. 最早到最近的增量备份,然后最后一次全备份

D. 最近到最早的增量备份,然后最后一次全备份

46.对所有用户的变量设置,应当放在哪个文件下?

A. /etc/bashrc

B. /etc/profile

C. ~/.bash_profile

D. /etc/skel/.bashrc

47.Linux系统中,一般把命令 ls 定义为 ls --color 的别名,以便以不同颜色来标识不同类型的文件。但是,如何能够使用原先的ls命令?

A. ls

B. ;ls

C. ls $$

D. ls --noalias

48.在Linux系统中的脚本文件一般以什么开头?

A. $/bin/sh

B. #!/bin/sh

C. use /bin/sh

D. set shell=/bin/sh

49.下面哪种写法表示如果cmd1成功执行,则执行cmd2命令?

A. cmd1&&cmd2

B. cmd1|cmd2

C. cmd1;cmd2

D. cmd1||cmd2

50.在哪个文件中定义网卡的I/O地址?

A. cat /proc/moles

B. cat /proc/devices

C. cat /proc/ioports

D. cat /io/dma

51.Linux中,提供TCP/IP包过滤功能的软件叫什么?

A. rarp

B. route

C. iptables

D. filter

52.如何暂停一个打印队列?

A. lpr

B. lpq

C. lpc

D. lpd

53.在vi中退出不保存的命令是?

A. :q

B. :w

C. :wq

D. :q!

54.在 XFree86 3.x 中, 缺省的字体服务器为:

A. xfs

B. xfserv

C. fonts

D. xfstt

55.使用什么命令检测基本网络连接?

A. ping

B. route

C. netstat

D. ifconfig

56.下面哪个协议使用了二个以上的端口?

A. telnet

B. FTP

C. rsh

D. HTTP

57.在PPP协议中,哪个认证协议不以明文传递密码?

A. PAM

B. PAP

C. PGP

D. CHAP

58.下面哪个文件系统应该分配最大的空间?

A. /usr

B. /lib

C. /root

D. /bin

59.如何在Debian系统中安装rpm包?

A. alien pkgname.rpm

B. dpkg --rpm pkgname.rpm

C. dpkg --alien pkgname.rpm

D. alien pkganme.rpm ; dpkg -i pkganme.deb

60.在安装软件时下面哪一步需要root权限?

A. make

B. make deps

C. make config

D. make install

61.什么命令用来只更新已经安装过的rpm软件包?

A. rpm -U *.rpm

B. rpm -F *.rpm

C. rpm -e *.rpm

D. rpm -q *.rpm

62.在 windows 与 Linux 双起动的系统中,如果要让LILO 管理引导,则 LILO 应该放在:

A. MBR

B. /

C. root分区的首扇区

D. /LILO

63.ldconfig的配置文件是

A. /lib/ld.so

B. /etc/ld.so.conf

C. /etc/ld.so.cache

D. /etc/moles.conf

64.下面哪个命令可以压缩部分文件:

A. tar -dzvf filename.tgz *

B. tar -tzvf filename.tgz *

C. tar -czvf filename.tgz *

D. tar -xzvf filename.tgz *

65.网络服务的daemon是:

A. lpd

B. netd

C. httpd

D. inetd

66.Linux与windows 的网上领居互联,需要提供什么daemon?

A. bind

B. smbd

C. nmbd

D. shard

67.对于Apache服务器,提供的子进程的缺省的用户是:

A. root

B. apached

C. httpd

D. nobody

68.sendmail中缺省的未发出信件的存放位置是:

A. /var/mail/

B. /var/spool/mail/

C. /var/spool/mqueue/

D. /var/mail/deliver/

69.apache的主配置文件是:

A. httpd.conf

B. httpd.cfg

C. access.cfg

D. apache.conf

70.关于可装载的模块,装载时的参数,如I/O地址等的存放位置是:

A. /etc/conf.moles

B. /etc/lilo.conf

C. /boot/System.map

D. /etc/sysconfig

71.在 Linux 中,如何关闭邮件提示?

A. biff n

B. mesg n

C. notify off

D. set notify=off

72.在 bash shell 环境下,当一命令正在执行时,按下 control-Z 会:

A. 中止前台任务

B. 给当前文件加上 EOF.

C. 将前台任务转入后台

D. 注销当前用户

73.定义bash环境的用户文件是:

A. bash & .bashrc

B. bashrc & .bash_conf

C. bashrc & bash_profile

D. .bashrc & .bash_profile

74.下面哪条命令用来显示一个程序所使用的库文件?

A. ldd

B. ld so

C. modprobe

D. ldconfig

75.如何查看一个RPM软件的配置文件的存放位置?

A. rpm -qc rpm1

B. rpm -Vc rpm1

C. rpm --config rpm1

D. rpm -qa --config rpm1

76.如何查看一个RPM软件的修改记录?

A. rpm -Vc postfix

B. rpm -qpil postfix

C. rpm --changelog postfix

D. rpm -q --changelog postfix

77.通过Makefile来安装已编译过的代码的命令是:

A. make

B. install

C. make depend

D. make install

78.什么命令解压缩tar文件?

A. tar -czvf filename.tgz

B. tar -xzvf filename.tgz

C. tar -tzvf filename.tgz

D. tar -dzvf filename.tgz

79.在 XF86Config 配置文件中,哪个段用来设置字体文件?

A. The Fonts section.

B. The Files section.

C. The xfsCodes section.

D. The Graphics section.

80.8 bit color 指的是:

A. 64K colors

B. 16K colors

C. 256 colors

D. 16M colors

81.下面哪个文件用来设置 X window 的显示分辨率?

A. xinit

B. xinitrc

C. XF86Setup

D. XF86Config

82.哪个变量用来指定一个远程X应用程序将输出放到哪个X server上?

A. DISPLAY

B. TERM

C. ECHO

D. OUTPUT

83.在xdm的配置目录中,哪个文件用来设置在用户通过xdm登录后自动起动的应用程序?

A. The Xsession file

B. The Xsetup_0 file

C. The Xstart_up file

D. The GiveConsole file

84.命令 netstat -a 停了很长时间没有响应,这可能是哪里的问题?

A. NFS.

B. DNS.

C. NIS.

D. routing.

85.ping使用的协议是:

A. TCP

B. UDP

C. SMB

D. ICMP

86.下面哪个命令不是用来查看网络故障的?

A. ping

B. init

C. telnet

D. netstat

87.拨号上网使用的协议通常是:

A. PPP

B. UUCP

C. SLIP

D. Ethernet

88.TCP/IP中,哪个协议是用来进行IP自动分配的?

A. ARP

B. NFS

C. DHCP

D. DNS

89.下面哪个文件定义了网络服务的端口?

A. /etc/netport

B. /etc/services

C. /etc/server

D. /etc/netconf

90.下面哪个功能用来生成一个文件的校验码?

A. md5

B. tar

C. crypt

D. md5sum

91.缺省的,用户邮件放在:

A. ~/mail/

B. /var/mail/

C. /var/mail/spool/

D. /var/spool/mail/

92.下面哪个文件包含了供 NFS daemon 使用的目录列表?

A. /etc/nfs

B. /etc/nfs.conf

C. /etc/exports

D. /etc/netdir

93.如何停止一台机器的telnet服务?

A. Put NONE in /etc/telnet.allow

B. Put a line 'ALL:ALL' in /etc/hosts.deny

C. Comment the telnet entry in /etc/inittab

D. Comment the telnet entry in /etc/xinetd.conf

94.在哪个文件中保存了sendmail的别名?

A. /etc/aliases

B. /etc/mailaliases

C. /etc/sendmail.aliases

D. /etc/sendmail/aliases

95.smbd and nmbddaemons 的配置文件是:

A. /etc/exports

B. /etc/smb.conf

C. /etc/samba/config

D. /usr/local/samba.cfg

96.下面哪个命令用来卸载一个内核模块?

A. rmmod

B. unmod

C. delmod

D. modprobe

97.什么情况下必须运行lilo

A. once a day from cron

B. once a week from cron

C. after installing a new kernel

D. after installing a new mole

98.什么命令显示所有装载的模块?

A. lsmod

B. dirmod

C. moles

D. modlist

99.下面哪个命令刷新打印机队列?

A. lpflush

B. lprm -

C. lpclear

D. lprm all

100.下面哪个命令可以查看网卡的中断?

A. cat /proc/ioports

B. cat /proc/interrupts

C. cat /proc/memoryinfo

D. which interrupts

参考答案:

01.D 02.B 03.C 04.C 05.B | 06 .C 07.B 08.C 09.A 10.B

11.A 12.C 13.C 14.C 15.B | 16.A 17.D 18.D 19.B 20.B

21.C 22.B 23.C 24.C 25.B | 26.D 27.A 28.B 29.B 30.A

31.A 32.C 33.A 34.D 35.D | 36.B 37.D 38.A 39.A 40.D

41.B 42.D 43.B 44.D 45.B | 46.B 47.A 48.B 49.A 50.C

51.C 52.C 53.D 54.A 55.A | 56.B 57.D 58.A 59.D 60.D

61.B 62.A 63.B 64.C 65.D | 66.B 67.D 68.C 69.A 70.A

71.A 72.C 73.D 74.A 75.A | 76.D 77.D 78.B 79.B 80.C

81.D 82.A 83.B 84.B 85.D | 86.B 87.A 88.C 89.B 90.A

91.D 92.C 93.D 94.A 95.B | 96.A 97.C 98.A 99.B 100.B

最后再给大家分享一些Linux学习资料,(我这里还有javapython,大数据,人工智能的资料,你要需要也可以一起免费带走哦)希望对你有所帮助,快来一起打包带走吧!

获取方式:只需转发本文,然后私信我“资料”即可免费领取!

阅读全文

与linuxc笔试题相关的资料

热点内容
杭州程序员健身 浏览:13
dvd光盘存储汉子算法 浏览:758
苹果邮件无法连接服务器地址 浏览:963
phpffmpeg转码 浏览:672
长沙好玩的解压项目 浏览:145
专属学情分析报告是什么app 浏览:564
php工程部署 浏览:833
android全屏透明 浏览:737
阿里云服务器已开通怎么办 浏览:803
光遇为什么登录时服务器已满 浏览:302
PDF分析 浏览:486
h3c光纤全工半全工设置命令 浏览:143
公司法pdf下载 浏览:383
linuxmarkdown 浏览:350
华为手机怎么多选文件夹 浏览:683
如何取消命令方块指令 浏览:350
风翼app为什么进不去了 浏览:779
im4java压缩图片 浏览:362
数据查询网站源码 浏览:151
伊克塞尔文档怎么进行加密 浏览:893