Linux基础命令

1. 命令格式 

1.1 打开终端的方式

ubuntu中的命令基本都是在终端执行的打开终端的方式:

第一种方法:在ubuntu桌面中鼠标右键选择“打开终端”

第二种方法:使用快捷键ctrl + alt + t

1.2 终端提示符

stu@qfedu:~$ stu:用户名 qfedu:主机名 ~:表示路径

  • ~:家目录

  • /:根目录

  • $:表示权限

  • $:普通用户权限

  • #:管理员权限

 1.3 命令的格式

命令   选项   参数

注意:命令、选项和参数之间必须用空格隔开

 ls ‐l    //空格隔开

例如:

2. 命令帮助信息

命令  ‐‐help

注意:并不是所有的命令都有帮助信息,pwd就没有

3. man命令

3.1 用法

man  章节   查找信息

 例如:

     man  1  ls  或者   man lsman   2    open

3.2 man手册

 man命令是linux提供的帮助手册,可以查询命令、函数或者特殊的文件

 man是Linux提供的一个手册,这个手册有很多个章节(通过man man)

第一章中放的是命令的帮助信息

第二章中放的是系统调用(操作系统提供的函数 open)

第三章中放的是库函数(c库提供的函数 printf)的帮助信息

4. 常用命令技巧 

4.1 自动补全

输入命令的一部分,然后按tab,就自动补全命令,如果有多个相同开头的命令多按一次tab键,他会将所有的以你输入开头的命令提示出来

例:ifconfig 输入 if  按两下tab键输入ifc  按tab键

注意:目录或文件的名字,也可以自动补全在当前目录下有个文件夹叫mydir

我要删除文件夹得话 rm  my 

然后按tab键就可以补全目录

4.2 历史命令

可以按 上下键 将以前输入的命令调出来,敲回车执行或者修改之后敲回车执行

4.3 重定向

  • 命令  > 目的文件    先清空原本文件内容,然后将命令的输出结果写入文件

  • 命令 >> 目的文件  以追加的方式将命令的输出结果写入文件

 本来输出到屏幕上的数据,重定向输出到了目的文件中

4.3.1 命令  > 目的文件:先清空原本文件内容,然后将命令的输出结果写入文件

4.3.2 命令 >> 目的文件:以追加的方式将命令的输出结果写入文件 

 

5. 管道命令(|)

一个程序的输出,作为另外一个程序的输入

  • ls ‐‐help  |  more  以每页的方式查看ls命令的帮助信息

  • ls /etc  |  wc ‐w  统计根目录下的etc目录中的文件数

6. ls 

1. ls:查看当前目下的文件名

2. ls  目录名:查看指定目录下的文件名

3. ls  / :查看根目下的文件名

4. ls  -a:查看当前目录下的所有文件名,包括隐藏文件

5. ls  -l:查看当前目录下文件的详细信息,以列表的形式展现         

6. ls  -al:查看当前目录下所有文件的详细信息

7. ls  -hl:详细信息中的字节数可以带单位的显示 

7. tree命令

系统默认没有这个命令,需要安装  sudo  apt-get  install  tree

如果报错显示无法获得锁,请使用一下命令删除一些文件即可:

  1. sudo rm /var/lib/dpkg/lock

  2. sudo rm /var/lib/dpkg/lock-frontend

  3. sudo rm /var/cache/apt/archives/lock

用法: tree  -L  层数  用于显示指定的层数

例如: tree   ‐L   3

8. clear

clear 清屏

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

9. cd 和 pwd

 9.1 cd命令

  1. cd 当前目录下的目录名进入指定的目录
  2. cd  / :进入根目录
  3. cd ~ cd :进入家目录
  4. cd . .进入当前目录的上一级目录
  5. cd ‐ : 返回到上一次的路径

 9.2 pwd

显示当前路径的绝对路径

10. 路径

  • 绝对路径:从根目录(最顶层目录开始的路径)例如:/home/teacher/test.c

  • 相对路径: 相对当前路径下的那个路径  cd . 当前目录,cd .. 返回上一级目录

11. 查看命令(cant)

  • cat  文件名:显示文件的内容

  • cat  ‐n  文件名:带行号的显示文件的内容

12. 删除命令(rm)

  1. rm 文件名删除指定的文件
  2. rm ‐rf 目录文件名删除指定的目录文件

13. 复制(cp)

  1. cp 文件名 目录名将文件复制到目录中
  2. cp 目录1 目录2 ‐a:将目录1复制到目录2
  3. cp 文件名1 文件名2:如果文件2不是目录,则文件1复制一份为文件2
  4. 如果文件2存在且不是一个目录,则直接将内容替换传文件1

14. 移动(mv)

mv 文件名 目录名:将文件移动到指定的目录中

mv 目录1 目录2:将目录1移动到目录2中

mv 文件1 文件2:如果文件2不存在,则功能为重命名

15.创建文件夹和文件 

15.1 创建文件夹(mkdir)

mkdir 目录名创建一个目录文件

mkdir 目录1 目录2 ...:创建多个目录

mkdir ‐p 目录1/目录2/目录3/...:嵌套的创建多个文件

15.2 创建文件(touch)

touch 文件名创建一个文件

 注意:如果文件已经存在,则touch会修改当前时间的时间戳 

16. 查找文件(find) 

find 路径 ‐name 文件名在指定的路径下查找指定的文件,会从指定路径下包括所有的子目录中寻找

17. 查找文件内容(grep)

  1. grep 查找信息 文件名在指定的文件中查找指定的内容,将查找到的内容整行输出并高亮显示查找的内容
  2. grep 查找信息 文件名 ‐n:在指定的文件中查找指定的内容,将查找到的内容整行且带行号输出并高亮显示查找的内容
  3. grep 查找信息 * ‐R ‐n:从当前目录以及子目录中的文件中查找指定信息

18. 数量统计(wc) 

语法:wc [-c  -m  -l  -w] 文件路径

  1. wc -c: 统计bytes数量
  2. wc -m: 统计字符数量
  3. wc -l: 统计行数
  4. wc -w:统计单词数量

19、创建链接文件(ln) 

 ln ‐s  源文件名 链接文件名 :创建一个链接文件(类似windows的快捷方式)

注意:不管对源文件还是链接文件进行修改,双方的内容都会改变;如果删除链接文件,对源文件没有任何影响;如果删除源文件,则链接文件失效。

20、压缩和解压缩

tar命令是一个用于归档和压缩文件的命令行工具。它具有丰富的选项参数,可以根据不同的需求选择不同的功能。

以下是tar命令常用的选项参数:

  • -c:创建新的归档文件。
  • -x:从归档文件中提取文件。
  • -f:指定归档文件的名称。
  • -v:显示归档过程中的详细信息。
  • -z:在归档文件中使用gzip进行压缩。
  • -j:在归档文件中使用bzip2进行压缩。
  • -t:查看归档文件中的内容。
  • -p:保留文件的权限和属性。
  • -C:在指定目录中解压文件。
  • -s:对归档文件中的文件进行重命名。
  • -r:向归档文件中追加文件。
  • -u:只将比归档文件中相应文件更新的文件添加到归档文件中。
  • --exclude:排除指定的文件或目录。
  • --wildcards:使用通配符匹配文件。
  • --strip-components:指定要从文件名中剥离的路径组件的数量。
  • --totals:显示归档文件中已处理文件的总字节数和文件数。

以上只是tar命令的一部分选项参数,还有其他一些参数可以根据具体需求进行使用。可以通过在命令行中输入"man tar"命令查看tar命令的完整选项参数和用法。

20.1 gzip压缩

tar zcvf  压缩包包名 文件1 文件2 文件3 ...

注意:压缩包包名一般以.tar.gz作为后缀名

20.2 gzip解压

tar  zxvf  压缩包包名

tar  zxvf  压缩包包名  -C  路径   解压到指定的路径

20.3 bzp2压缩

tar jcvf  压缩包包名 文件1 文件2 文件3 ...

注意:压缩包包名一般以.tar.bz2作为后缀名

20.4 bzp2解压

tar  jxvf  压缩包包名

tar  jxvf  压缩包包名  -C  路径   解压到指定的路径

20.5  zip和unzip

压缩:

命令:zip

语法:zip [-d]  压缩文件

  • -d:指定要压缩的位置

解压:

命令:unzip

语法:unzip  -[-d]  解压文件

  • -d:指定要解压的位置

21、编辑器之神  -- vi

21.1 安装vim

sudo  apt-get  install  vim

21.2 安装ctags

sudo  apt-get  install  ctags

21.3 vi的使用

vi 文件名:在vi编辑器中打开或者创建一个文件,并将光标置于第一行行首

vi  +n  文件名:打开存在文件,并将光标置于第n行行首

21.4 vi的三种模式

1. 插入模式

    这种模式可以直接编辑文档.....

2. 编辑模式

    在编辑模式下可以敲一些命令,执行例如 复制n行、剪切n行、粘贴等功能注意:vi在打开   一个已经存在的文件的时候,默认进入的是编辑模式

3. 命令模式(最后一行模式)

    在此模式下可以保存文件,退出vi 等功能

21.5 三种模式之间的切换:

  1. 由编辑模式进插入模式  按 a  i  o,这几个字母区别是插入的位置不一样
  2. 由插入模式进编辑模式按ESC键
  3. 只能由编辑模式才能进最后一行模式
  4. 在编辑模式下按 shift : 进入 最后一行模式
  5. 由命令模式(最后一行模式)也可以进编辑模式按ESC

总结:

  1. 由插入模式或者命令模式(最后一行模式)进编辑模式,方法是按ESC键
  2. 由编辑模式进命令模式(最后一行模式)按 shift :
  3. 由编辑模式进插入模式按  a  i   o
  4. 插入模式和命令模式(最后一行模式)不能直接切换

21.6 命令模式下的一些指令

  1. :w   保存文件

  2. :wq  保存文件并退出vi

  3. :x   保存文件并退出vi

  4. :q!  不保存文件,强制退出vi

  5. :w  filename另存为filename

21.7 命令模式下的操作

  1. u 撤消前面多次修改。  ctl  r  反撤销

  2. [n]x 删除光标后n个字符。例如:[3]x,删除光标后的3个字符

  3. ​[n]X 删除光标前n个字符。例如:[3]X,删除光标前的3个字符

  4. [n]dd 剪切从当前行开始的n行(只剪切不粘贴,认为就是删除)   例如:[3]dd,剪切3行

  5. [n]yy 复制从当前行开始的n行。例如:[3]yy,复制了3行

  6. p  把粘贴板上的内容插入到当前行

  7. . . 执行上一次操作

  8. shift+zz:保存退出当前文件

21.8 命令模式下的移动光标

  1. [n]g:将光标定位到第n行开始处

  2. 5G:将光标移动第5行开始处

  3. G:将光标定位到文件结束处

  4. gg:将光标定位到文件开始处

21.9 命令模式下的查找

  1. / 字符串:从光标开始处向文件尾查找字符串。

  2. n:同一方向重复上一次查找命令。

  3. N:反方向重复上一次查找命令

22、gcc编译器

22.1 一步编译

 编译程序:

gcc  hello.c  默认会生成一个名为 a.out的可执行文件

运行程序:./a.out

22.2 分步进行

  1. gcc  -E  hello.c  -o  hello.i  1、预处理

  2. gcc  -S  hello.i  -o  hello.s  2、编译

  3. gcc  -c  hello.s  -o  hello.o  3、汇编

  4. gcc   hello.o  –o  hello      4、链接

23. echo(输出)

24. tail(尾部内容)

语法:

tail  [-f  -num]  文件路径  :表示被跟踪的文件路径

  • tail -f:表示持续跟踪
  • tail -num:表示查看尾部多少行,不填默认10行

25. 权限

   drwxrwxr-x 2 stu 4096 12月 19  09:30  share

             d:文件类型,Linux里面不以后缀名作为文件类型来区分

             Linux里面一共有七种文件类型:bcd-lsp,Linux里面一切皆文件

                   b:块设备文件

                   c:字符设备文件

                   d:目录文件

                   -:普通文件

                   l:软连接文件

                   s:套接字文件

                   p:管道文件

           rwxrwxr-x:文件权限,以三个为一组,分别表示用户主,用户组以及其他用户对文件                                的操作权限

           r:读权限;w:写权限;x:可执行权限,如果是 - ,表示没有这个权限

           2:链接文件的个数

          stu:用户名

          stu:用户组名

          4096:文件大小,默认以字节为单位

          12月 19  09:30   时间戳,文件最后修改时间

          share:文件名

数字权限:

  • 0:无任何权限,即---
  • 1:仅有x权限,即--x
  • 2:仅有w权限,即-w-
  • 3:有w和x权限,即-wx
  • 4:仅有r权限,即r--
  • 5:仅有r和x权限,即r-x
  • 6:仅有r和w权限,即rw-
  • 7:有所有权限,即rwx

26. 修改权限

chmod命令:修改文件、文件夹的权限信息

注意:只有文件、文件夹所属用户或者root用户可以修改

语法:chmod [-R] 权限 文件或者文件夹

  • chmod -R :对文件夹的内的全部内容有所应用同样的操作

例如:

chmod u=rwx,g=rx,o=x hello.txt,将文件权限修改为rwxr-x--x

其中:u表示user所属用户权限,g表示group组权限,o表示other其他用户权限

27. 修改用户

使用chown命令,可以修改文件、文件夹的所属用户和用户组

普通用户无法修改所属为其他用户或组,所以此命令只适用于root用户执行。

语法:chown [-R] [用户] [:] [用户组]  文件或文件夹

  • chown -R:同chmod对文件夹内容全部应用相同规则
  • chown [用户]:修改所属用户
  • chown [用户组]:修改所属用户组
  • [:] :用于分割用户和用户组

28. 快捷键

  1. Ctrl + c:结束进程
  2. Ctrl + d:退出登录
  3. Ctrl + r:历史命令筛选
  4. history:历史搜索命令
  5. Ctrl + a:调到命令开头
  6. Ctrl + e:调到命令结尾
  7. Ctrl + 键盘左键:向左跳一个单词
  8. Ctrl + 键盘右键:向右跳一个单词

29. apt命令(Ubuntu)

安装软件

语法:apt [-y] [install] | [remove] | [seach] 软件名称 

30.systemctl命令

语法:systemctl [start] [stop] [status] [enble] [disable] 服务名

31. 时间和时区 

31.1查看系统时间

语法:date [-d]  [+格式化字符串]

  • -d:按照给定的字符串显示日期,一般用于日期计算
  • 格式化字符串:通过特定的字符串标记,来控制显示的日期格式

格式字符串:

  • %Y:年
  • %y:年份后两数字(00 99)
  • %m:月份(01.12)
  • %d:日(01.31)
  • %H:小时
  • %M:分钟
  • %S:秒
  • %s:自1970-01-01 00:00:00 UTC 到现在的秒数

31.2 时区和时间修改

安装ntp:yum install ntp

启动并设置开机自启:

  • systemctl  start  ntpd       启动
  • systemctl  enable  ntpd    开机自启动

当前ntad启动后定期帮助我们联网校准系统的时间

-- 1.删除本地时间
sudo rm -f /etc/localtime

-- 2.软连接
sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

32. ping命令

测试某服务器是否连通

语法:ping [-c num] ip 或者主机名

  • -c:测试的次数  

33. 网络文件的下载

wget命令进行网络文件的下载

语法:wget [-b] url

  • -b:后台下载

34. 网络请求

curl命令可以发起网络请求

语法:curl [-O] url

  • -O:用于下载 

35. 端口

35.1 概念

端口是指计算机和外部交互的出入口,可以分为物理端口和虚拟端口

  1. 物理端口:USB、HDM、DP、VGA、RJ45等
  2. 虚拟端口:操作系统的外部交互的出入口

IP只能确定计算机,通过端口才能锁定要交互的程序

35.2 端口的划分

  1. 公认端口:1~1023,用于系统内置或常用之名软件绑定使用
  2. 注册端口:1024~49151,用于松散绑定使用(用户自定义)
  3. 动态端口:49152~65535,用于临时使用(多用于出口)

35.3 查看端口占用

查看指定IP的对外暴露端口

语法:nmap 127.0.0.1(本机IP)

 查看本机指定端口号的占用情况

语法:netstat -anp | grep 端口号

36. 进程

语法:ps [-e -f ]

  • -e:显示出全部进程
  • -f:以格式化的形式展示信息(展示全部信息)

一般的固定用法:ps  -ef ;展示全部信息

36.1 kill

关闭进程

语法:kill [-9] 进程Id

  • -9:强制杀死进程 

37. 修改主机名

查看主机名

  • 命令:hostname

修改主机名:

  • 命令:hostnamectl  set- hostname 主机名 

38. 查看任务管理器

命令:top

  • PID:进程ID
  • USER:进程所属用户
  • PR:进程优先级,越小越高
  • NI:负值表示高优先级,正表示低优先级
  • VIRT:进程使用虚拟内存,单位KB
  • RES:进程使用物理内存,单位KB
  • SHR:进程使用共享内存,单位KB
  • S:进程状态(S休眠,R运行,Z僵死状态,N负数优先级,I空闲状态)
  • %CPU:进程占用CPU率
  • %MEM:进程占用内存率
  • TIME+:进程使用CPU时间总计,单位10毫秒
  • COMMAND:进程的命令或者名称程序的文件路径

top命令选项: 

  • - `-d <秒数>`:指定更新间隔。默认值为3秒。
  • - `-n <次数>`:指定显示的次数。默认情况下,top命令将一直运行,直到用户中断。
  • - `-p <进程ID>`:指定要监视的特定进程ID。
  • - `-u <用户名>`:只显示特定用户的进程。
  • - `-o <排序字段>`:按指定的字段进行排序。常见的字段包括CPU使用率(%CPU)、内存使用率(%MEM)和虚拟内存(VIRT)。
  • - `-b`:以批处理模式运行top命令,并将结果输出到标准输出。
  • - `-c`:显示进程的完整命令行。
  • - `-i`:忽略空闲和僵尸进程。
  • - `-H`:显示每个进程的线程。
  • - `-s <秒数>`:安全模式运行top命令,每个进程的计算时间限制为指定的秒数。
  • - `-W`:将宽度调整为适应终端大小。

这只是一些常见的top命令选项,还有许多其他选项可用。要查看所有选项,请查阅top命令的手册页(man页)。

39. 磁盘信息监控

语法: df  [-h]

  • -h:以更加人性化的单位显示

查看磁盘相关信息

语法:iostat  [-x]  [num1]  [num2]

  • -x:显示更多信息
  • num1:数字,刷新间隔,num2:数字,刷新几次 

40. 网络状态监控

语法:sar -n DEV [ num1 num2 ]

  • -n:查看网络,DEV num1,num2
  • num1:刷新间隔(不填就查看一次结束),num2:查看次数(不填写无限次数)

41. 环境变量

41.1 查看环境变量

命令:env 

41.2 自行设置环境变量

临时设置:

语法:export  变量名=变量值

永久生效:

  • 针对当前用户生效,配置在当前用户的:~/.bashrc文件中
  • 针对所有用户生效,配置在系统中:/etc/profile文件中
  • 通过语法:source 配置文件,进行立刻生效或者重新登录 

42. 配置固定IP

第一步如图:

第二步:使用vim编辑:/etc/sysconfig/network-scripts/ifcfg-ens33文件

第三步:

-- 停止启动网卡
systemctl stop network

-- 重新启动网卡
systemctl start network
  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值