Linux基础知识和命令

一、终端

1.tty

ctrl + alt + F1 回到图形化界面
ctrl + alt + F2 进入tty1
ctrl + alt + F3 进入tty2
……

2.还是图形界面终端更好用

二、命令行

1.命令行提示符

[dlc@localhost ~]$ 
  • dlc是当前用户的名字。
  • @前面是用户名、后面是所在的域。
  • localhost是主机的名字。
  • ~ 是当前目录名字,会随着用户进入不同目录而改变
  • $ 指示所具有的权限($普通用户,#超级用户)

2.简单的命令

date 显示当前时间
[root@localhost dlc]# date
20200430日 星期四 10:19:46 CST
ls 列出当前目录下文件和目录
[root@localhost /]# ls
bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
boot  etc  lib   media  opt  root  sbin  sys  usr

3.命令的参数

参数是写在命令之后的一些补充选项,命令和参数之间有空格隔开

参数没有固定的格式,但是一般来说还是遵循一定的规范。
  1. 短参数(一个字母):一般是一个短横线后接一个字母。多个短参数也可以合在一起。
  2. 长参数(多个字母):两个短横线开始
参数的值
  1. 短参数赋值:command -p 10
  2. 长参数赋值:command --parameter=10

三、查找命令和命令的历史记录

1.如何找到一个命令

  • Tab键补全命令,也可以补全目录、文件。
  • 按两次Tab可以显示出所有结果

2.命令的历史记录

  • 按上下键查找
  • 也可以用Ctrl + R查找。
  • history 列出之前使用过的所有命令,可以用 !编号这样的格式来重新运行history输出中对应编号的命令。

3.一些实用快捷键

  • Ctrl + L 清屏
  • Ctrl + D 给终端传递EOF(文件结束符)
  • Ctrl + A 光标跳到一行命令开头
  • Ctrl + E 光标跳到一行命令结尾
  • Ctrl + U 删除所有在光标左侧的命令字符
  • Ctrl + K 删除所有在光标右侧的命令字符
  • Ctrl + W 删除在光标左侧的一个单词
  • Ctrl + Y 用于粘贴U、K、W删除的字符串

四、文件组织,pwd和which命令

1.文件组织

(1)文件分类:

分类:普通文件、特殊文件

  1. 普通文件
    文本类型、声音文件、程序
  2. 特殊文件
    例如 光盘、驱动器

Linux中一切都是文件

(2)根目录

根目录就是 /

(3)目录结构

使用 / 表明目录的层级与包含关系

(4)根目录直属子目录:

在这里插入图片描述
bin:包含会被所有用户使用的可执行程序
boot:包含Linux启动相关文件
dev:包含外设
etc:系统的配置文件
home:用户私人目录
lib:包含被程序所调用的库文件
media:媒体
mnt:挂载,临时挂载一些装置
opt:可选的应用软件包
root:root的家目录
sbin:系统二进制文件
srv:服务,一些网络服务启动后所需要取用的数据
tmp:存放临时文件
usr:Unix操作系统软件资源
var:包含程序的数据,比如日志文件

2.pwd和which

  • pwd:显示当前目录的路径
  • which:获取命令的可执行文件的位置(?)

什么意思?
Linux下,每一条命令其实对应了一个可执行程序。比如:
在这里插入图片描述

五、浏览和切换目录

1.ls命令:列出文件和目录

CentOS终端默认有颜色标注:

  • 蓝色:目录
  • 绿色:可执行文件
  • 红色:压缩文件
  • 浅蓝色:链接文件
  • 灰色:其他文件

ls命令常用参数

  • -a:显示所有文件和目录,包括隐藏的
  • -l:详细列表权限 链接数 创建者名称 文件所在群组 大小byte 最近修改时间 名称
  • -h:以Ko,Mo,Go的形式显示文件大小(和 l 一起用)
  • -t:按文件最后一次修改时间排序(和 l 一起用)

2.cd:切换目录

绝对路径:/ 开头,从根目录开始
相对路径:从当前目录开始

.表示当前目录,..表示上级目录

3.du:显示目录包含的文件大小

  • -a:显示目录和文件(默认只显示目录)
  • -s:只显示总计大小
  • -h:以Ko,Mo,Go的形式显示文件大小

六、浏览和创建文件

1.cat和less:显示文件内容

cat:一次性在终端中显示文件的所有内容
  • -n:显示行号
  • 可以显示多个文件
less:分页显示文件内容

有以下快捷键

  • 空格:文件内容读取下一个屏幕终端的行数(与pageDown一样)
  • 回车:向下一行
  • d键:前进半页
  • b键:后退一页(与pageUp一样)
  • y键:后退一行
  • u键:后退半页
  • q键:退出less
  • =键:显示在文件中的位置
  • h键:显示帮助文档
  • /键:搜索模式,n下一个,N上一个

2.head和tail:显示文件的开头和结尾

head显示文件开头

默认显示头10行。

  • -n:指定显示行数
tail显示文件结尾

与head相似。

但是还可以用-f来实时追踪文件的更新。
默认会每过一秒检查一下文件是否有新内容,也可以指定间隔检查的秒数,用-s

3.touch和mkdir:创建文件和目录

touch:创建一个空白文件

touch本意是修改文件时间戳,不过如果后面跟的是一个不存在的文件,便会新建。

mkdir:创建一个目录

可以用-p递归创建目录结构
在这里插入图片描述

七、文件的复制、移动、删除、链接

1.cp:拷贝文件或目录

在这里插入图片描述
也可以将文件拷贝到其他目录。

如果要拷贝目录,需要加上-r,目录中所有的文件、目录都会被拷贝。

使用通配符*,可以替代任意字符串。比如cp *.txt folder,就是将当前目录下所有txt文件拷贝到folder中。

2.mv:移动文件或目录/重命名

  • 移动:用法类似cp
  • 重命名:本质也是移动,只是在移动时可以修改名字。

3.rm:删除文件和目录

  • -i:向用户确认是否删除
  • -f:不会询问,强制删除
  • -r:递归删除一个目录

4.ln:创建链接

每个文件有三部分:文件、文件名、权限

两种链接类型:

  • 硬链接
    两个文件名指向同一个文件。(文件名像是引用,文件像是实例)
    在这里插入图片描述
    在这里插入图片描述

  • 软链接
    创建软链接需要加上-s
    文件2作为文件1的软链接,则文件2的文件内容是文件1。
    在这里插入图片描述

八、用户和权限

1.sudo:以root身份运行命令

一般会创建一个有限权利的用户,这是一种安全机制。

sudo命令:暂时成为root。
sudo su:一直成为root
su -:切换到root用户,且目录定位到root的家目录

2.Linux下的用户组织

一种可能的组织形式:
在这里插入图片描述

3.用户管理的命令

  • useradd:添加新用户
  • passwd:修改密码
  • userdel:删除用户,-r会删除家目录

九、群组管理和文件权限管理

1.群组管理的命令

Linux每一个用户都属于一个特定的群组。如果你不设置用户的群组,默认会创建一个和它用户名一样的群组,并且把用户划归到这个群组。

  • groupadd:创建群组
  • usermod:修改用户账户
    • -l:对用户重命名,家目录名不改变
    • -g:修改用户所在群组
    • -G:将一个用户添加到多个群组
    • -a:追加,不离开以前的,又想加入新的群组,可与-G一起用
  • groups:查看用户所在群组
  • groupdel:删除群组

2.改变文件的所有者和群组

  • chown:改变文件的所有者 chown 用户 文件
    • -R:递归设置子目录和子文件
  • chgrp:改变文件的群组 chgrp 群组名 文件
  • chown也可以改变群组:chown oscar:friends file.txt,将文件所有者改为oscar,群组改为friends。

3.修改权限

(1)权限的原理

文件访问权限符:

  • d:表示“目录”
  • l:表示“链接”
  • r:可读
  • w:可写
  • x:可运行
  • 相应位置有字母表示有相应权限,没有用-表示。后面有.表示启动安全标签

在这里插入图片描述

(2)chmod:修改文件的访问权限

不需要是root,只要是该文件的所有者就可以运行。

  • 数字分配
    在这里插入图片描述
    chmod 620 file就是rw–w—x
  • 字母分配
    • u:所有者
    • g:群组
    • o:其他用户
    • a:所有用户
    • +:添加权限,-:去除权限,=:分配权限
      例如:在这里插入图片描述

同样的利用-R,可以递归地修改访问权限。

十、软件仓库

1.软件包

(1)定义

一个软件包其实是软件的所有文件的压缩包,二进制形式,包含了安装软件的所有指令。在Red Hat一族里,软件包的后缀是.rpm。

(2)和windows安装程序的区别
  1. 软件包管理包括了依赖关系的管理。
  2. 软件包不需要去自己搜索下载,几乎所有.rpm包存放在相同地方,称为软件仓库(repository)
(3)切换软件仓库(以阿里云为例)
  1. 首先备份系统自带yum源配置文件/etc/yum.repos.d/CentOS-Base.repo
[root@localhost dlc]# mv /etc/yum.repos.d/CentOS-Base.repo  /etc/yum.repos.d/CentOS-Base.repo.backup
  1. 下载阿里云的yum源配置文件到/etc/yum.repos.d/
[root@localhost dlc]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  1. 运行yum makecache生成缓存
yum clean all
yum makecache

2.包管理工具

yum是CentOS中默认包管理工具

  • yum update/upgrade:更新软件包
  • yum search:搜索软件包
  • yum install:安装软件包
  • yum remove:删除软件包

3.本地软件包安装

本地的.rpm软件包,可以用rpm命令来安装。

  • sudo rpm -i *.rpm 用于安装
  • sudo rpm -e 包名 用于卸载

十一、RTMF阅读手册

1.man命令:显示使用手册

使用手册类别:

  • 可执行程序或Shell命令
  • 系统调用(Linux内核提供的函数)
  • 库调用(程序库中的函数)
  • 文件
  • 特殊文件
  • 游戏
  • 杂项
  • 系统管理命令
  • 内核子程序

2.手册页的不同区域

区域的名字是用大写和粗体表示,且靠左对齐。

  • NAME:名字
  • SYNOPSIS:包含使用此命令的所有方法
  • DESCRIPTION:命令更深入描述,包括所有参数及其用法
  • AUTHOR:作者
  • COPYRIGHT:版权
  • SEE ALSO:扩展阅读

3.SYNOPSIS区域语法总结

  • 粗体:原封不动输入
  • 下划线:用实际内容替换
  • [-hvc]:-h -v -c都是可选的
  • a|b:输入a或者b,但不能同时输入
  • …:表示前面的内容可以输入多个

3.apropos:查找命令

比如要查找如何控制音量:

apropos sound

4.-h或–help

显示帮助文档。

十二、查找文件

1.locate 快速查找

locate 后接要查找的关键字即可。

刚刚新建的,用locate查不到。因为locate在文件的数据库中查找,刚创建的文件还不会放到数据库。

2.find 深入查找

find 何处 何物 做什么,何物是必须指定的。

  • 何处:指定在哪个目录中查找,所有子目录也会被查找。假如没有指出会在当前目录及子目录查找。
  • 何物:可以根据名字、大小、最近访问时间等查找
  • 做什么:找到后可以接后续操作
(1)根据文件名查找

在这里插入图片描述
需要使用通配符来模糊查询。

(2)根据文件大小查找

假如要查找/var中大小超过10M的文件
在这里插入图片描述

(3)根据最近访问时间查找

查找7天内访问的txt文件。
在这里插入图片描述

(4)按类型

-type

  • -type d:只查找目录
  • -type f:只查找文件
(5)后接操作

默认的操作是显示(-print)

  • 可以用-printf格式化打印。
  • -delete删除找到的文件
  • 使用-exec可以后接一个命令,{}会用每一个查找到的文件来替换,\;是必须的结尾
    例如:find -name "*.txt" -exec chmod 600 {} \;就是将当前目录所有txt文件权限改为600
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值