2021年3月-第01阶段-Linux基础-Linux系统概念-Linux命令

Linux系统基本概念

图形界面:

  • Ctrl+Shift +号 //调整命令终端变大

  • Ctrl - 号 //调整命令终端变小

命令终端:

  • ~ 家目录:用户的私有场所,其他用户不能随便访问

  • root超级管理员家目录:/root

  • 普通用户的家目录:/homt/用户名同名,lisi用户的家目录:/home/lisi

Linux系统而言:

  • 多用户的系统:允许同时有很多个用户登录系统,使用系统里的资源

  • 多任务的系统:允许同时执行多个任务

  • 严格区分大小写:命令,选项,参数,文件名,目录名都严格区分大小写

  • 一切皆文件:硬件设备(内存、CPU、网卡、显示器、硬盘等等)都是以文件的形式存在的

  • 不管是文件还是目录都是以倒挂的树形结构,存在于系统的“/”根目录下,根目录是Linux系统的起点

  • 对于Linux系统而言,目录/文件没有扩展名一说,扩展名如:.sh(脚本文件) .conf(配置文件)
    .log(日志文件) .rpm(软件包).tar(压缩包)是易于用户方便识别

  • 没有提示就是最好的提示(成功了)

快捷键

Ctrl + l:清屏

Ctrl + c:取消当前执行的命令

键盘上下键调出历史命令

exit:退出系统

命令行一般命令格式

命令字 [-选项...] [参数...]

  • 命令字:命令本身(功能)

  • 选项:

    • 短选项:-l -a -d -h(单个字符),短选项可以合并使用:-la -lh

    • 长选项:--help(单词),长选项通常是不能合并使用的
  • 参数:命令的执行对象,文件/目录/程序等

  • []:可选的

  • ...:可以同时有多个选项或参数

学习方法

  • 遇到问题:前期不要求你们有排错的能力

  • 思考自己能不能解决:百度、Google、最后在问老师

  • 主动学习的爱好,不要被动学习

  • 不要死磕一个技术点,低头学习的时候不要忘了抬头看路

Linux系统辨别目录与文件的方法

蓝色表示目录(windows系统里的文件夹)

白色表示文件

浅蓝色表示链接文件(类似于windows系统的快捷方式)

绿色表示可执行文件(如脚本,命令程序文件)

红色表示压缩文件

黄色表示设备文件(硬盘、键盘、鼠标、网卡、CPU硬件设备都是以文件的形式存在的)

红色闪动文件——>表示链接文件不可用

ls命令

ls命令(英文全拼:list):用于查看目录下内容及目录和文件详细属性信息

命令格式:ls [-选项...] [参数...]

常用选项:

  • -a 显示目录下所有内容,包含隐藏的内容

  • -l 以长格式显示目录下的内容及详细属性

  • -h 人性化显示目录下内容大小(kB、MB、GB)

  • -d 仅显示目录本身而不显示目录下的内容

  • -i 查看inode号(系统任何的文件或目录都有一个唯一的编号)

  • -R:递归查看目录下所有内容(从头到尾)

Linux系统文件类型

-文件:

d 目录:

l 链接文件

b 跨设备文件

c 字符设备文件

p 管道设备文件

s 套接字

Linux系统下的归属关系

在Linux系统下,文件给用户分成了三类

  • u 所有者:文件或目录的拥有者,拥有者的权限通常是最大的

  • g 所属组:文件或目录属于哪一个组,所属组的权限略微比所有者小

  • o 其他人:既不是文件或目录的所有者,也部署于文件或目录组内的成员,其他人的权限通常最小的权限

ls命令示例:

//显示当前所在目录下的所有内容
[root@localhost ~]# ls      

//查看根目录下所有内容
[root@localhost ~]# ls   /
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

//查看/etc目录下所有内容
[root@localhost ~]# ls /etc

//查看/bin目录下所有内容
[root@localhost ~]# ls /bin

//查看/dev目录下所有内容
[root@localhost ~]# ls /dev

//查看目录下所有目录和文件,包括隐藏的内容
[root@localhost ~]# ls -a

//以长格式显示目录下所有内容,包括详细的属性信息
[root@localhost ~]# ls -l
-rw-r--r--. 1 root root 1831 3月  13 17:45 initial-setup-ks.cfg
drwxr-xr-x. 2 root root    6 3月  13 17:47 公共
#解释
-:文件类型
1:代表文件的引用次数,只针对与做了硬连接的文件才有效
root:文件的所有者
root:文件的所属组
1831:文件的大小,默认以字节为单位显示大小
3月  13 17:45:文件最近一次的修改时间
initial-setup-ks.cfg:文件名

//以长格式显示目录所有内容,以人性化的方式显示详细的属性信息
[root@localhost ~]# ls -l -h

//短选项合并使用
[root@localhost ~]# ls -lh

//以长格式显示目录所有内容,以人性化的方式显示详细的属性信息,包括隐藏的内容
[root@localhost ~]# ls -lha

//以长格式显示根目录下所有内容,包括详细的属性信息
[root@localhost ~]# ls -l /
lrwxrwxrwx.   1 root root    7 3月  13 17:15 bin -> usr/bin

//创建hello.txt文件
[root@localhost ~]# touch hello.txt

//查看文件的元数据信息
[root@localhost ~]# stat hello.txt
  文件:"hello.txt"
  大小:0          块:0          IO 块:4096   普通空文件
设备:fd00h/64768d Inode:33575020    硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2021-03-14 16:38:14.349861770 +0800
最近更改:2021-03-14 16:38:14.349861770 +0800
最近改动:2021-03-14 16:38:14.349861770 +0800
创建时间:-

Linux基本权限的类别

  • r 读取 w 写入 x 执行 - 没有权限

  • 权限顺序:rwxrwxrwx
[root@localhost ~]# ls -l
-rw-r--r--. 1 root root 1831 3月  13 17:45 initial-setup-ks.cfg
#解释
-:文件类型
rw- r-- r--:所有者u、所属组g、其他人o的权限
u   g   o

1:代表文件的引用次数,只针对与做了硬连接的文件才有效
root:文件的所有者
root:文件的所属组
1831:文件的大小,默认以字节为单位显示大小
3月  13 17:45:文件最近一次的修改时间
initial-setup-ks.cfg:文件名

//查看/root目录本身详细属性信息
[root@localhost ~]# ls -ld /root
dr-xr-x---. 14 root root 4096 3月  14 16:38 /root

//查看当前目录下所有内容的inode号
[root@localhost ~]# ls -i
33574979 anaconda-ks.cfg  33574984 initial-setup-ks.cfg  33575035 模板  33575036 图片  17470701 下载            17470702 音乐
33575020 hello.txt        51909391 公共                  51909392 视频   3204374 文档  33575017 新建文件夹.zip   3204373 桌面

//查看hello.txt文件的inode号
[root@localhost ~]# ls -i hello.txt
33575020 hello.txt

//查看/etc/目录本身的inode号
[root@localhost ~]# ls -id /etc
16777281 /etc

mkdir命令

  • mkdir(英文全拼:make directory)用于创建新目录

  • 命令格式:mkdir [-选项] 目录名

  • 常用选项:

-p 递归创建多个目录

注意事项:

  • 目录还是文件的名字,除了以“/”以外的任意名称,“/”根目录,路径分隔符

  • 文件或目录的名字长度不能超过255个字符

mkdir命令示例

//在当前所在目录创建test目录
[root@localhost ~]# mkdir test
[root@localhost ~]# ls

//在当前所在目录同时创建多个目录
[root@localhost ~]# mkdir test1 test2 test3
[root@localhost ~]# ls

//指定在/tmp目录下创建abc目录
[root@localhost ~]# mkdir /tmp/abc
[root@localhost ~]# ls /tmp
abc

//在指定目录下同时创建多个目录
[root@localhost ~]# mkdir /tmp/abc1 /tmp/abc2 /tmp/abc3
[root@localhost ~]# ls /tmp

//在/opt目录下创建student,在当前目录创建student1..3
[root@localhost ~]# mkdir /opt/student student1  student2 student3
[root@localhost ~]# ls /opt
rh  student

//mkdir默认无法在一个不存在的目录下创建目录,需要通过-p选项
[root@localhost ~]# mkdir /opt/xx/oo
mkdir: 无法创建目录"/opt/xx/oo": 没有那个文件或目录

[root@localhost ~]# mkdir /opt/a/b/c/d
mkdir: 无法创建目录"/opt/a/b/c/d": 没有那个文件或目录

//在/opt目录下递归创建目录
[root@localhost ~]# mkdir -p /opt/xx/oo
[root@localhost ~]# ls /opt
rh  student  xx

[root@localhost ~]# mkdir -p /opt/a/b/c/d
[root@localhost ~]# ls /opt
a  rh  student  xx

//ls -R选项可以递归目录下所有内容
[root@localhost ~]# ls -R /opt/a
/opt/a:
b

/opt/a/b:
c

/opt/a/b/c:
d

猜你喜欢

转载自blog.51cto.com/15065901/2663675