Linux 入门第一节

注:默认采用的是Centos7.6的版本

一、Linux目录结构

Linux的文件系统是采用层级式的树状目录结构,在此结构最上层的是目录 “/”,然后在此目录下再创建其它文件,在Linux世界中一切皆为文件。比如你的CPU、插入的U盘也都是一个文件。在这里插入图片描述

目录名 描述
bin bin目录下存放的是系统中的命令文件(例如:cd ls cat 命令)
sbin sbin就是super user的意思,存放的是系统管理员使用的系统管理程序
home home目录存放的是普通用户的主目录,Linux中每一个用户都有一个目录,目录名以用户名命名
root root目录是超级管理员的主目录,一般用户进入不了root目录,只有root账号才可以
lib lib目录是系统所需要的动态库,类似于Windows的ddl文件,几乎所有的程序都需要用到这个共享库
lost+fount 这个目录一般情况下是空的,只有非法关机的时候才有数据
etc etc目录主要存放的是系统杂七杂八的数据、环境变量、及配置信息(例如:Mysq默认安装l的my.conf文件)
usr 这个目录比较重要,系统中安装的所有程序默认都会安装到这个目录下,比较类似windows下的Program Files
boot(不要动这个目录) boot目录下存放了系统启动时的一些核心文件和一些链接文件和镜像文件,这个文件一旦被破坏系统将无法运行
proc(不要动这个目录) proc是一个虚拟目录,他是系统的内存映射,之存在于内存当中,可以通过访问这个目录获取系统信息
srv(不要动这个目录) service缩写,该目录存放服务启之后需要提取的数据
sys(不要动这个目录) Linux比较重要的一个目录,不要修改里面的任何东西
tmp tmp目录主要存放了一些系统的临时文件
dev 该目录类似于windows的设备管理器,把所有的硬件以文件的形式进行存储
media Linux系统会自动识别一些设备,例如U盘,光驱等等,识别后Linux会把这个设备挂在到这个目录下
mnt 系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。
opt 该目录主要是存放于一些软件的安装程序,相当于是一个约定,比如说jdk的安装程序就需要放在这里
/usr/local opt目录是存放安装程序的,那么/usr/local就是存放程序安装成功后的路径
var 这个目录存放着不断扩充的东西,习惯经常被修改的目录放在这个文件下,包括各种日志文件

二、vi和vim文本编辑器

vi是Linux自带的文本编辑器,vim是vi的增强版。这里就使用vim进行演示(可以输入vim -v 检测当前系统是否安装)

文本编辑器的几种模式

在这里插入图片描述

正常模式
当输入vim demo.txt后 就会进入正常模式,正常模式下可以使用一些文本操作命令,比如复制粘贴等。
编辑模式
进入一般模式后如果按下ins键则进入编辑模式,可以对文本进行输入,如需要返回到正常模式下就按ESC。
命令模式
在正常模式下输入:或者/ 就会进入命令模式在这个模式下你可以进行读取,存盘,替换,离开vim等命令,如需返回到正常模式下就按ESC。

实战案例

拷贝粘贴文本内容,拷贝粘贴三行内容(该命令需要文本编辑器在正常模式下)

拷贝yy 
拷贝三行 3yy
粘贴 p

删除当前行,删除前三行(该命令需要文本编辑器在正常模式下)

删除当前行 dd
删除前三行 3dd

文本内容查找(该命令需要文本编辑器使用 / 进入命令模式)

/keyworld  然后回车 如果查找到按下n找下个相似的,按N回到上一个相似的 。

显示文本行号,关闭行号(该命令需要文本编辑器使用 : 进入命令模式)

:set nu 显示行号
:set nonu 关闭行号

光标定位到最末行,光标定位到最首行(该命令需要文本编辑器在正常模式下)

最末行 G
最首行 gg

撤销(该命令需要文本编辑器在正常模式下)

u

光标快速定位到某一行(该命令需要文本编辑器在正常模式下)

 输入需要定位的行号然后 然后再按下shift+G

三、用户管理

  • Linux默认只能有一个root账户,root用户可以使用useradd usernam 来添加一个新的用户,创建成功后系统会自动在home下创建和用户名相同的目录

实战案例

创建一个tom用户

 useradd  tom

给tom指定密码

password tom 回车后输入需要设置的密码

删除tom并保存home目录

userdel tom

删除tom不保存home目录

 userdel -r tom

那么不删除home和删除home有什么区别吗?区别就是不删除tom目录tom之前留下的数据还是存在的(建议不删除)

查询用户tom的用户组信息和组信息

id tom

从root切换到tom用户(权限高的用户切换到权限低的用户不需要输入密码)

su - tom

文件讲解

  • /etc/passwd 文件
    用户(user)的配置文件,记录用户的各种信息
    每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell

  • /etc/shadow 文件
    口令的配置文件
    每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

四、用户组

用户组的概念可以类比于后台管理系统中角色的概念,我们可以把有共性的用户统一分到一个组进行管理。

实战案例

创建一个superman组

groupadd superman

删除superman组

groupdel superman

在创建用户的时候指定组(如果创建用户的时候没有分配组那么就会默认创建一个和用户名相同的组)

useradd -g superman chaoren

组切换,创建一个badman 然后把chaoren 移动到badman 组里面

groupadd badman
usermod -g badman chaoren

文件讲解

  • /etc/group
    组(group)的配置文件,记录Linux包含的组的信息
    每行含义:组命令:口令:组标识号:组内用户列表

五、运行级别

  • 0 (关机)
  • 1(单用户找回密码)
  • 2(多用户状态没有网络服务)
  • 3(多用户状态有网络服务 <最常用的>)
  • 4(系统未使用保留给用户)
  • 5(图形界面<最常用的>)
  • 6(重启系统)

使用init 命令来切换系统运行级别(例:init 5 ),最常用的就是运行级别3 和5

Centos7后运行级别说明

  • multi-user.target:analogous to runlevel 3(相当于运行级别3)
  • graphical.target:analogous to runlevel 5(相当于运行级别5)

我们可以通过systemctl get-default来获取系统设置的默认级别可以通过systemctl set-default multi-user.target 或者 graphical.target 来切换系统的默认运行级别

六、文件目录指令

相对路径和绝对路径

  • 相对路径:就是根据当前进入的目录之上进行目录查找比如 ../tom/fyx(查找当前目录的上级的tom目录下的fyx目录)
  • 绝对路径:绝对路径是不跟据当前路径为前提,使用/home/fyx这种从根节点往下查找的形式称为绝对路径

命令说明

查看当前在那个目录下

 pwd

cd~ 是回到自己的home初始目录,如果你是root 就回到/root目录下

 cd ~

回到上级目录

 ../

创建文件夹

mkdir /root/first

创建多级文件夹

mkdir -p /root/first/two

删除多级文件夹(文件下有内容则删除失败)

rmdir  /root/first/two

强制删除

rm  -rf /root/first/two

创建一个空文件

touch my.txt

拷贝命令

# 拷贝1.txt 到/usr/local
cp /mydemo/1.txt  /usr/local 
# 递归拷贝 把mydemo 整个复制到/usr/local 下面
cp -r /mydemo
# \默认全部覆盖,如果有重复的话默认全部覆盖
\cp -r -r /mydemo

删除命令(可以删除目录或者文件)

#参数r 标识递归删除 参数f标识不提示直接删除
rm -rf /mydemo

文件移动

# 移动test 到/usr/local 目录下
mv test /usr/local

查看文件内容(相比于vim cat查看文件内容更加安全)

# -n 是显示行号
cat -n  /etc/profile
# 结合管道符(管道符类似于vue的管道符,都是将前面一行获取到的值进行二次加工)more
# 进入文本后按下空格进行翻页,按下enter 进行换行
cat -n  /etc/profile | more 

查看大文本内容(less查看大文本要优于vim查看大文本)

# -n 是显示行号
less demo.txt

# 进入文本后
PgDn 是下一页 PgUp 是上一页
输入/keyworld 回车进行内容查找  小n查看下一个符合的关键字 大N查找上一个关键字,q推出less模式

打印主机名内容到控制台

echo $HOSTNAME

查看开头内容(head)

# 默认查看前十行内容
head  demo.txt
# 查看前一百行的内容
head -100 demo.txt

查看结尾内容(tail)

# 查看结尾100行的内容
tail -n 100 demo.txt
# 实时查看结尾的100行内容
head -100f demo.txt

查看日历

cal

输出重定向(>)和追加(>>)指令

# 将ls的值重定向到demo.txt 并覆盖demo.txt所有的内容
ls  > /usr/local/demo.txt
#将ls的值重定向到demo.txt 并追加内容不进行覆盖
ls  >> /usr/local/demo.txt

创建一个软连接类似win上面的快捷方式

# ln 目标目录 软连接路径
ln -s /usr/local /home/fastdemo
# 接下来cd /home/fastdemo 相当于进入/usr/local目录下

查看所有用户执行过的指令

history
posted @ 2022-04-12 16:19  xiye1  阅读(36)  评论(0)    收藏  举报