练习1:
1.在用户的家目录下创建 目录文件 dir1 和 普通文件file1
ubuntu@ubuntu:~$ mkdir dir1
ubuntu@ubuntu:~$ touch file1
ubuntu@ubuntu:~$ ls
1.c file1 下载 图片 桌面 视频
dir1 snap 公共的 文档 模板 音乐
其中目录文件和普通文件分别使用mkdir和touch两个指令来创建
2.在家目录下给dir1目录嵌套创建 dir1/dir2/dir3/dir4/dir5
ubuntu@ubuntu:~$ mkdir dir1/dir1/dir2/dir3/dir4/dir5 -p
ubuntu@ubuntu:~$ tree dir1
dir1
└── dir1
└── dir2
└── dir3
└── dir4
└── dir5
5 directories, 0 files
在家目录下使用mkdir指令进行嵌套需要加上-p
3.在家目录下直接一步进入到 dir4 里面
ubuntu@ubuntu:~$ cd dir1/dir1/dir2/dir3/dir4
ubuntu@ubuntu:~/dir1/dir1/dir2/dir3/dir4$
在家目录下使用cd指令,要写清楚进入目录路径
4.在dir4目录中将家目录下的file1移动到上一级的dir3中
ubuntu@ubuntu:~/dir1/dir1/dir2/dir3/dir4$ mv ~/file1 ../
ubuntu@ubuntu:~/dir1/dir1/dir2/dir3/dir4$ tree ../
../
├── dir4
│ └── dir5
└── file1
2 directories, 1 file
5.在dir4目录下创建一个目录文件 test
ubuntu@ubuntu:~/dir1/dir1/dir2/dir3/dir4$ mkdir test
ubuntu@ubuntu:~/dir1/dir1/dir2/dir3/dir4$ tree
.
├── dir5
└── test
2 directories, 0 files
6.将test复制到上一级的dir3中,在dir4中直接查看dir3中有哪些文件
ubuntu@ubuntu:~/dir1/dir1/dir2/dir3/dir4$ cp test ../ -r
ubuntu@ubuntu:~/dir1/dir1/dir2/dir3/dir4$ tree ../
../
├── dir4
│ ├── dir5
│ └── test
├── file1
└── test
4 directories, 1 file
8.在dir4中直接回到家目录 删除刚才创建的目录 dir1
ubuntu@ubuntu:~/dir1/dir1/dir2/dir3/dir4$ cd
ubuntu@ubuntu:~$ rm -rf dir1
ubuntu@ubuntu:~$ ls
1.c snap 下载 公共的 图片 文档 桌面 模板 视频 音乐
练习2:
1、创建目录24081C,在该目录下创建目录dir1 dir2 文件file1
ubuntu@ubuntu:~$ mkdir 24081c
ubuntu@ubuntu:~/24081c$ mkdir dir1 dir2
ubuntu@ubuntu:~/24081c$ touch file1
ubuntu@ubuntu:~/24081c$ tree
.
├── dir1
├── dir2
└── file1
2 directories, 1 file
2、使用echo在file1中打印一首古诗【执行调整格式】
buntu@ubuntu:~/24081c$ echo -e "\t莫笑农家腊酒浑\n\t丰年留客足鸡豚\n\t山重水复疑无路\n\t柳暗花明又一村\n" >> file1
ubuntu@ubuntu:~/24081c$ cat file1
莫笑农家腊酒浑
丰年留客足鸡豚
山重水复疑无路
柳暗花明又一村
3、复制file1给file2
ubuntu@ubuntu:~/24081c$ cp file1 file2
ubuntu@ubuntu:~/24081c$ tree
.
├── dir1
├── dir2
├── file1
└── file2
2 directories, 2 files
4、将file1移动到dir1
ubuntu@ubuntu:~/24081c$ mv file1 dir1
ubuntu@ubuntu:~/24081c$ tree
.
├── dir1
│ └── file1
├── dir2
└── file2
2 directories, 2 files
5、将file2移动到dir2
ubuntu@ubuntu:~/24081c$ mv file2 dir2
ubuntu@ubuntu:~/24081c$ tree
.
├── dir1
│ └── file1
└── dir2
└── file2
2 directories, 2 files
6、在file1后面追加一行语句“我爱C语言”,查看file1内容
buntu@ubuntu:~/24081c/dir1$ echo -e "\t我爱C语言">>file1
ubuntu@ubuntu:~/24081c/dir1$ cat file1
莫笑农家腊酒浑
丰年留客足鸡豚
山重水复疑无路
柳暗花明又一村
我爱C语言
练习3:
1、使用gcc 程序编译生成可执行文件的步骤分为___预处理_____、____编译____、____汇编____、____链接____
2、GCC编译器中 -S 选项完成的工作是___编译_____
3、写出gcc分步编译的详细步骤。
首先对已有.c文件进行预处理
ubuntu@ubuntu:~$ gcc -E 2.c -o 2.i
得到.i文件,再对该文件进行编译处理
ubuntu@ubuntu:~$ gcc -S 2.i -o 2.s
得到.s文件,对该文件进行汇编处理
ubuntu@ubuntu:~$ gcc -c 2.s -o 2.o
得到.o文件,对该文件进行链接处理
ubuntu@ubuntu:~$ gcc 2.o -o exe
生成可执行文件,最后执行该文件
ubuntu@ubuntu:~$ ./exe
走向世界ubuntu@ubuntu:~$
4、C语言的程序的入口函数是什么,请写出全称?
以main命名的主函数
int main ( int argc, const char *argv[ ])
{
return 0;
}
5、用户编写了一个文本文件a.txt,想要得到一个名为txt.a的该文件,可以使用哪些指令呢
使用cat命令
ubuntu@ubuntu:~$ cat a.txt
111
111
ubuntu@ubuntu:~$ cat a.txt>txt.a
ubuntu@ubuntu:~$ cat txt.a
111
111
使用mv命令
ubuntu@ubuntu:~$ mv a.txt txt.a
ubuntu@ubuntu:~$ cat txt.a
111
111
使用cp命令
ubuntu@ubuntu:~$ cp a.txt txt.a
ubuntu@ubuntu:~$ cat txt.a
111
111
6、
- 分析一下#include <stdio.h>的意思
#表示:
include表示:包含命令
stdio.h表示:标准的输入输出头文件 .h是头文件的后缀
<>可以改为””吗?二者的区别是什么?
可以
<>表示直接从库文件中找 /usr/include/stdio.h
“”表示先从当前目录下寻找,找不到再在库文件中寻找