Linux基础知识及命令(一)

x33g5p2x  于2021-09-24 转载在 Linux  
字(1.8k)|赞(0)|评价(0)|浏览(618)

一、Linux基础

1.1什么是shell

  • Linux系统中运行的一种特殊程序

PS:程序是一串特定的指令序列去执行一定的特殊的任务

在用户和内核之间充当“翻译官”
*
用户登录Linux系统时,自动加载一个Shell程序
*
Bash是Linux系统中默认使用的Shell程序(Bash是一种程序)

文件位于bin/bash

[root@localhost ~]/# echo $SHELL 查看shell默认什么程序

[root@localhost ~]/# cat /etc/shells 查看系统哪些程序支持shell

[root@localhost ~]/# sh 切换到其他程序

1.2Linux命令的分类及区别

内部命令外部命令
集成于Shell解释器程序内部的一些特殊指令,也称为内建指令Linux系统中能够完成特定功能的脚本文件或二进制程序
属于Shell的一部分属于Shell解释器程序之外的命令
没有单独对应的系统文件每个外部命令对应了系统中的一个文件
自动载入内存,可以直接使用必须知道其对应的位置,由shell加载后才能执行
  • 内部命令>缓存命令(hash)>外部命令

内部命令,如:

Echo命令是打印的意思

即是内部命令,又是外部命令(怕有些环境中没有这些命令)

程序存放在目录下,例如:

1.3如何区分内部命令和外部命令

用type来判别,内部命令只有显示是shell的内嵌,例如:

外部命令,有程序所在的路径信息

1.4命令执行的顺序

命令执行顺序:先找hash缓存,再找内部命令,再找外部命令

例如:ls命令在缓存中有这条,我将这条命令从缓存中删掉后,执行ls这个程序的时候就会找内部命令,因为ls属于外部命令,所以内部命令找不到,最终在外部命令找到ls程序,并执行。

1.5 Linux命令格式

  • 基本格式:命令字 空格 [选项] 空格 [参数]
  1. 命令字(区分字母大小写)

​ 是整条命令中最关键的一部分

​ 唯一确定一条命令

  1. 选项

​ 短格式选项:使用“-”符号引导, 通常引导一个字母

​ 长格式选项:使用“–”符号引导。通常引导一个完整的单词

  1. 参数

​ 命令字的处理对象

​ 可以是文件名、目录(路径)或用户名等内容

​ 个数可以是0到多个,例如

有些命令仅支持文件,如vim,有些命令支支持文件夹
*
“ ;”可以用来隔开命令,执行多个命令,例如

1.6Linux辅助操作

二、Linux的优点

  1. 一切都是一个文件。(包括硬件)
  2. 系统中拥有小型,单一用途的程序。(一个程序只负责做好自己的本职工作)
  3. 当遇到复杂任务,通过不同功能用途的程序组合起来完成。
  4. 避免令人困惑的用户界面就是没有复杂的图形界面。
  5. 连配置文件都存储在文本中,方便增删改查。
  6. 不在乎后缀名,有没有都无所谓,不是通过后缀名来定义文件的类型。

三、Linux获取命令帮助方法

3.1内部命令help

查看shell内部命令的帮助信息,例如:查看echo命令怎么用

3.2命令的“–”help选项

适用于大多数LINUX外部命令,例如:查看ls命令怎么用

3.3使用man命令阅读手册页

  • 使用上下箭头滚动一行文本
  • 使用Page UP和Page Down键翻页
  • 按Q或q键退出阅读环境
  • 按“\”键查找内容

四、目录与文件的基本操作

4.1查看当前的工作目录—Pwd

显示用户当前所在的工作目录位置,示例:

/Bin是个链接文件,真实地址是/usr/bin

4.2切换工作目录-cd

4.2.1绝对路径与相对路径

绝对路径:绝对路径是指目录下的绝对位置,直接到达目标位置,通常是从盘符开始的路径。
*
相对路径:相对路径就是指由这个文件所在的路径引起的跟其它文件(或文件夹)的路径关系。
*
/ 唯一入口,例如:

​ /etc/ 绝对路径

​ /opt/ 绝对路径

4.2.2相对路径的表现形式
表现形式说明实例
直接使用目录名或文件名表示当前工作目录的子目录、文件的位置grub.conf
以一个点号“.”开头表示当前的工作目录作为起点./grub.conf
以两个点号“…”开头表示以当前目录的上一级目录(父目录作为起点)…/vmlinuz
以“~用户名”形式开头表示以指定的宿主目录作为起点~teacher

举例:

4.3创建文件夹的三种方法

  • [root@yxp ~]/# touch 7.txt
  • [root@yxp ~]/# vim 77.txt
  • [root@yxp ~]/# echo “888” > 777.txt

五、Linux命令基础知识总结

相关文章