Linux的基础命令的介绍使用

文章目录:

                一、ls命令    查看文件信息

                二、cd命令    切换路径

                三、clear 命令

                四、pwd 命令 

                五、目录文件和普通文件的创建和删除命令

                六、*模糊匹配

                七、man 命令

                八、cp 命令

                九、mv命令

                十、wc命令

                十一、 查看文本文件内容命令

                十二、gcc 的安装及命令

                十三、gdb 调试及命令

                十四、makefile 文件

                十五、find 和  grep 命令

                十六、关机和重启命令

                十七、文件的解压缩

俗话说Linux一切皆文件,所以对于Linux系统的学习,命令操作是必不可少的。

一、ls命令    查看文件信息

1.1 ls 命令

查看当前路径下的所有非隐藏文件

1.2 ls -l 命令

查看当前路径下的所有非隐藏文件的详细信息,如权限,创建日期,大小等

Linux的基础命令的介绍使用_第1张图片

1.3 ls -a 命令

查看当前路径下的所有包括隐藏文件的文件

1.4 ls -i  命令 

查看当前路径下的所有非隐藏文件的inode节点号

1.5 ls + 路径 

查看指定路径下所有非隐藏文件

 二、cd命令    切换路径

对于路径分为相对路径和绝对路径

相对路径:由于是相对的,所以必须有一个基准作为参照物来说明,./ 基准所在的当前目录。如下图中的mybin/cc就是相对路径,其基准为 ./ 。

Linux的基础命令的介绍使用_第2张图片

 绝对路径:就是完全路径,对于Linux系统,所有路径的绝对路径都以根目录(/)为起点

2.1 cd  +  路径

切换到该路径下

 对于cd命令,其后面可以是相对路径也可以是绝对路径

特殊的,对于ls -a展示的文件中有  .   和   ..   ,也是两个路径,分别是当前路径和上层路径。以及,对于家目录可以使用  ~  符号。/ home / dy  和  ~  代表相同路径即家目录。

 Linux的基础命令的介绍使用_第3张图片

 三、clear 命令

用于清屏,也可使用快捷键 ctrl+l

四、pwd 命令 

查看当前路径的绝对路径

 五、目录文件和普通文件的创建和删除命令

5.1目录文件的创建

mkdir  目录文件名        在当前路径下创建一个目录文件

可以批量创建,如:

mkdir   dir1  dir2  dir3  ...

  Linux的基础命令的介绍使用_第4张图片

5.2目录文件的删除 

rmdir  目录文件名        删除当前路径下的该目录文件(目录文件为空才可以删除,非空则不能删除)

可以批量删除,如:

rmdir   dir1  dir2  dir3  ...

Linux的基础命令的介绍使用_第5张图片

 

5.3普通文件的创建 

touch   普通文件名           在当前路径下创建一个普通文件

可以批量创建,如:

touch   a.c  b.c  c.c  ...

Linux的基础命令的介绍使用_第6张图片

5.4普通文件的删除 

rm   普通文件名          删除当前路径下的该普通文件

可以批量删除,如:

rm   a.c  b.c  c.c  ...

Linux的基础命令的介绍使用_第7张图片

 5.5强制删除普通文件或者目录文件

rm  -r   文件名       强制删除文件(目录文件是否为空都可以删除)

rm  -rf   文件名      不展示提示(警告)信息,强制删除文件(目录文件是否为空都可以删除)

5.6上述操作中的文件名均可以加上指定路径进行相同操作

Linux的基础命令的介绍使用_第8张图片

rmdir    rm   touch   rm -r   rm -rf  都可以如上述操作 

*Linux系统不同于Windows系统不存在回收站,文件删除后无法恢复,所以删除需谨慎*

六、*模糊匹配

rm *.c                         ->    删除当前目录下的以.c结尾的所有普通文件

rm    *                         ->    删除当前目录下的所有普通文件

rmdir dir*                   ->    删除当前目录下的以 dir 开头的所有目录文件

rmdir    *                    ->     删除当前目录下的所有目录文件

rm -r *.c 或者 dir *     ->     强制删除当前目录下的以 .c 结尾或者以 dir 开头的的所有文件

rm  -r   *                     ->     强制删除当前目录下的所有普通文件

七、man 命令

查看帮助手册

man    数字   内容

数字对应的内容类型:

1 —> 命令

2 —>系统调用函数

3 —>库函数

 回车后会出现如下界面:Linux的基础命令的介绍使用_第9张图片

 使用上下键进行翻页,按q键退出

数字的作用是,有些函数和命令的名字相同,如chmod既是系统调用又是命令,所以数字就可以进行区分要查的是命令还是系统调用

八、cp 命令

8.1 cp  a.c   b.c  命令

用于拷贝普通文件

cp   a.c  b.c   将a.c文件中的内容拷贝到b.c文件中(a.c文件必须存在,b.c文件可以不存在,若不存在,则该命令会创建一个b.c普通文件,再进行拷贝)

Linux的基础命令的介绍使用_第10张图片

 8.2 cp  -r  dir1  dir2

用于拷贝目录文件

cp   dir1   dir2    将dir1文件中的内容拷贝到dir2文件中(dir1文件必须存在,dir2文件可以不存在,若不存在,则该命令会创建一个dir2目录文件,再进行拷贝)

Linux的基础命令的介绍使用_第11张图片

 上述拷贝操作中可以在文件名前加上路径,两个文件可以是不同路径,当为不同路径时,文件的名字也可以相同。

Linux的基础命令的介绍使用_第12张图片

九、mv命令

mv 命令有两种作用:重命名  和  文件移动(剪切)

 9.1 重命名

mv   文件名1   文件名2      文件名1和文件名2要在相同的路径下才会进行重命名,若在不同路径下,则会变成文件移动

Linux的基础命令的介绍使用_第13张图片

9.2 文件移动(剪切)

mv   路径1+文件名   路径2        路径1和路径2不相同才能进行剪切,否则会变成重命名

Linux的基础命令的介绍使用_第14张图片

 十、wc命令

用来统计文件内容的个数

10.1 wc  文件名

数字的含义从左往右依次为 行数 单词个数 总共占字节数(包含 \n 字符)

10.2 wc 文件名1 文件名2 ...

10.3 wc -l 文件名 统计行数

10.4 wc -w 文件名 统计单词个数

 

10.5 wc -c 文件名 统计字符个数

 十一、 查看文本文件内容命令

11.1 cat 命令

适用于内容少的文件

11.1.1查看文件

cat 文件名

Linux的基础命令的介绍使用_第15张图片

11.1.2重定向(删除原内容,进行覆盖)

cat > 文件名

ctrl + d 退出编辑

Linux的基础命令的介绍使用_第16张图片

11.1.3追加(不删除原内容,进行追加)

cat >> 文件名

ctrl + d 退出编辑

Linux的基础命令的介绍使用_第17张图片

11.1.4合并文件(将多个文件内容合并到一个文件中)

cat 文件名1 文件名2 ... > 文件名a (将文件1,文件2,...中的内容合并到 文件a中)

Linux的基础命令的介绍使用_第18张图片

 11.2 more 和 less 命令

适用于内容多的文件

11.2.1.  more + 文件名

向下翻页按键:

回车 :一行一行往下翻页

空格 :一屏幕一屏幕往下翻页

向上翻页按键

b :一屏幕一屏幕往上翻页

还有 s d f 会不同比例往下翻页

退出(当文件内容浏览完会自动退出)

q :退出浏览

进入模式

在浏览过程中按 v 可进入命令模式

在命令模式下按a i o s 可进入插入模式

在插入模式下按Esc 可进入命令模式

11.2.2  less + 文件名

向下翻页按键:

方向下键 :一行一行往下翻页

PGDN :一屏幕一屏幕往下翻页

向上翻页按键

方向上键 :一行一行往上翻页

PGUP :一屏幕一屏幕往上翻页

退出

内容展示完后不会自己退出,会出现(END) 的字样。此时仍然可以往上翻页

想退出按 q 即可

11.3 head 和 tail 命令

head  +  文件名

默认显示内容的前十行

head  -n  +  文件名

显示文件内容 前 n 行

tail  +  文件名  

默认显示内容后十行 

tail  -n  +  文件名

显示文件内容 后 n 行

tail   -f   +   文件名   

一般用于跟踪日志文件,实时编写展示

十二、gcc 的安装及命令

安装 gcc(用来编译C语言程序)编译器命令:sudo apt install gcc

安装 g++(用来编译C++程序)编译器命令:sudo apt install g++

12.1编译链接原理

a.c —(预编译)> a.i —(编译)> a.s —(汇编)> a.o —(链接)> a

12.2逐步编译命令

预编译命令: gcc -E a.c -o a.i 在a.c所在目录下会生成a.i文件

编译命令: gcc -S a.i -o a.s 在a.i所在目录下会生成a.s文件

汇编命令: gcc -C a.s -o a.o 在a.s所在目录下会生成a.o文件(a.o文件为可执行文件)

链接命令: gcc a.o -o a 在a.o所在目录下会生成a文件

12.3一步编译成.o文件

gcc -c a.c b.c .... 生成a.o b.o .... 文件

12.4一步编译命令 

gcc -o a a.c b.c ... 在a.c所在目录下会生成a文件

a为可执行程序 a.c b.c ...为可执行程序生成依赖的文件

// gcc a.c 在a.c所在目录下会生成a.out文件

12.5执行可执行文件的命令

上述生成的  a  为可执行文件,可使用命令:路径 / a  执行可执行文件

若想要想系统命令一样,在执行时不加路径,则需要将该可执行文件移动到 /bin 路径下。

十三、gdb 调试及命令

13.1调试的分类:

Debug(调试版本)

使用 gcc -o main main.c -g 指令 生成的main文件为debug调试版本

Release(发行版本)

使用 gcc -o main main.c 指令 生成的main文件为release发行版本(gcc默认是生成发行版本)

13.2安装gdb

sudo apt install gdb

13.3调试步骤:

1.gcc -o main main.c -g 切换到Debug版本

2.启用调试:gdb main(main 必须是Debug版本,否则无法调试)

3.当出现 (gdb) 提示符时就可以输入命令

4.下断点:b 行号 或者 break 行号

5.运行:r 或者 run

6.退出调试:quit 或者 q 回车

13.4运行代码之前的操作(运行代码后也可以使用):

l 行号 查看当前行号前后总共10行的代码内容

不加行号时默认从第一行开始展示10行代码内容

b 行号 或者 break 行号 在当前行号下断点

b 函数名 给该函数的第一个有效行下断点

info b 或者 info break 查看断点信息

Linux的基础命令的介绍使用_第19张图片

13.5运行代码后的操作:

r 或者 run 运行代码(碰到断点或者scanf,fgets需要输入的函数会自己阻塞住)

当想要执行带参数的命令时,需要在r后面加上参数即可

n 或者 next 一条语句逻辑运行

c 或者 continue 从当前位置直接执行到下一个断点处

s 进入要被调用的函数中执行

finish 跳出函数

Linux的基础命令的介绍使用_第20张图片

delete 断点号(及上图中的Num) 删除指定的断点

disable 断点号 将该断点号处断点设为无效

disable 将所有断点设为无效

enable 断点号 将该断点号处断点设为有效

enable 将所有断点设为有效

13.6 监视操作

p a 打印变量a的值

p &a 打印变量a的地址

p a+b 打印变量(a+b)表达式的值

Linux的基础命令的介绍使用_第21张图片

p arr(数组名) 打印数组arr所有元素的值

p *p 用指向数组的指针打印数组所有元素的值

Linux的基础命令的介绍使用_第22张图片

display a或者&a或者a+b(表达式) 自动显示a的值或者a的地址或者a+b表达式的值

执行一步操作就显示一次 a的值或者a的地址或者a+b表达式的值

info display 显示 ' 自动显示 ' 信息 和 info b 相同

Linux的基础命令的介绍使用_第23张图片

undiaplay 编号 删除指定的自动显示

编号为上述图片中 1: a=3 或者 1: y a中的 1

ptype a 显示变量a的类型

bt 显示函数调用栈

 13.7 fork函数的父子进程的调试

#include
#include
#include
int main()
{
  pid_t pid=fork();
  if(pid==0)
  {
  	printf("child\n");//语句一
  }
  else 
  {
    printf("father\n");
  }
  exit(0);  
}   

在使用gdb调试时,断点下到语句一处,运行后不会在语句一处阻塞,因为调试时默认是跟父进程代码调试。

改成跟子进程代码调试:set follow-fork-mode child

如果想从子进程改到父进程使用:set follow-fork-mode parent

十四、makefile 文件

用于实现自动化编译

安装make的命令:sudo apt install make

make命令只针对makefile文件。执行make命令时,默认直接调用makefile文件

第一步:编辑c源文件222222

编辑好main.c add.c mul.c等文件

第二步:创建并编辑makefile文件(文件名必须是makefile,否则无法编译)

vim makefile 之后编辑格式如下:

Linux的基础命令的介绍使用_第24张图片

all:要生成的文件名字(如main)

可以空一行也可以不空

要生成的文件名(如main):要生成该文件的所需的源文件的 .o 文件

必须以按tab空行,四个空格无法编译 gcc -o main add.o max.o main.o

add.o : add.c

必须以按tab空行,四个空格无法编译 gcc -c add.c

max.o : max.c

必须以按tab空行,四个空格无法编译 gcc -c max.c

min.o : min.c

必须以按tab空行,四个空格无法编译 gcc -c min.c

clean:

必须以按tab空行,四个空格无法编译 rm -r *.o(使用指令make clean后会删除当前路径下的.o文件)

编辑好后保存退出

终端执行make命令

make之后,在当前路径下会出现main可执行文件。若make执行失败,则可能是代码语法问题,或者makefile文件格式错误

终端执行:make clean命令

调用makefile文件中的clean

十五、find 和  grep 命令

find 用于查找文件        grep 用于过滤(需要和管道结合使用)

15.1查找该路径下的该文件名:

find 路径 -name 文件名

若该文件名不存在,则不会显示。若文件名为命令,则也不会显示

15.2模糊匹配查找:

find 路径 | grep ".c"

在该路径下找含有.c的文件

Linux的基础命令的介绍使用_第25张图片

15.3 grep过滤命令的例子:

ls /bin | grep man

查看 /bin 路径下所有的文件,过滤条件是命令名包含man内容

该命令会显示该路径下所有含有man的文件

Linux的基础命令的介绍使用_第26张图片

从文件中查找信息:grep "hello" 文件名 会将该文件中含有hello的一行显示出来

十六、关机和重启命令

16.1 关机命令:

halt

poweroff

shutdown -h now 立刻关机(root用户使用)

shutdown -h 10 10分钟后自动关机 该处10可以换做5:30,意思是5:30关机

上面的 -h 均可以省略

init 0

16.2 重启命令:

reboot

shutdown -r now 立刻重启(root用户使用)

shutdown -r 10 10分钟后重启 该处10可以换做5:30,意思是5:30重启

init 6

16.3 如果想取消定时关机重启则可以使用shutdown  -c

十七、文件的解压缩

Linux的基础命令的介绍使用_第27张图片

17.1文件的分步压缩:

第一步:打包文件

tar cf其他参数 生成的文件名要以.tar结尾 需要打包的文件名...

会在当前路径下生成.tar文件

Linux的基础命令的介绍使用_第28张图片

第二步:压缩文件

gzip 第一步打包好的文件名

会将第一步生成的.tar文件更改为.tar.gz文件

17.2文件的一步压缩:

tar zcf其他参数 生成的压缩文件要以.tar.gz结尾 需要压缩的文件...

会直接生成.tar.gz文件

Linux的基础命令的介绍使用_第29张图片

17.3文件的分步解压:

第一步:解压文件

gzip -d 压缩好的.tar.gz文件

会生成.tar文件

第二步:解包文件

tar xf其他参数 上一步解压好的文件

会生成源文件

Linux的基础命令的介绍使用_第30张图片

17.4文件的一步解压

tar zxf其他参数 压缩好的.tar.gz文件

会直接生成源文件

Linux的基础命令的介绍使用_第31张图片

你可能感兴趣的:(linux,服务器)