Linux基础

linux基础

第1节

1.1 目录

去往当前目录家目录
cd ~
cd
cd /root/
cd /            #进入根目录

cd -            #回到上一层目录

cd  /boot       #根文件夹下面的boot文件夹

/ 根是起点  所有文件的起点  根:系统的入口
/在前面是根目录  /在后面为分隔符
localhost   #主机名

#          #超级管理员用户

$          #普通用户:权限受限用户

关机命令:
1、halt   				#立刻关机
2、poweroff  			#立刻关机
3、shutdown -h now       #立刻关机(root用户使用)
4、shutdown -h 10        #10分钟后自动关机
#重启:
reboot
init6
shutdown -r now

绝对路径:以根开头的文件路径,是唯一的

相对路径:不以根开头的文件路径,不一定唯一

pwd   显示当前路径

1.2 --help

查看外部命令帮助

[root@localhost ~]# ls --help
[root@localhost dev]# useradd --help

1.3 shell是什么

shell是一类软件总称

shell程序:将人类使用的高级语言,翻译成二进制语言(机器可以听懂的语言)

bash是shell的一种,CentOS默认shell:/bin/bash

每打开一个交互界面 必须加载一个shell程序

内核是操作系统的一部分,内核用于调动硬件

1.4 linux命令

linux命令分为内部命令和外部命令

bash集成了很多程序 内部命令

系统安装后:还需要安装的程序就是外部命令

所有的内部命令就在内存中

外部命令 存储在硬盘上

   命令执行的过程

   判断是否是内部命令,是直接执行, 
   不是,去看hash缓存表    如果hash 表有直接执行,有 但是找不到 报错
   如果是第一次执行的外部命令,会去规定的文件夹找命令,如果没有会报错
执行命令,命令不存在有可能:

1. 命令打错
2. hash缓存中没有
3. 不在$PATH中
4. 没有安装
ls  -l:使用较长格式列出信息

ls  --help

tab:自动补全  唯一  直接补  不是唯一  全部显示

ctrl+l:可以清屏

ctrl+c:终止

ctrl+a:光标移到最前

ctrl+e:光标移到最后

ctrl+e:搜索命令

rm -rf  / *:删除根目录

1.5 文件类型

七个文件类型

  • -普通文件

  • d目录文件directory

  • l符号链接文件link

  • b块设备文件block

  • c字符设备文件character

  • p管道文件pipe #一般用在内部

  • s套接字文件socket #程序之间传递信息 紫色

第一个字符 文件类型
- 普通文件,包括纯文本文件、二进制文件、各种压缩文件等。
d 目录,类似 Windows 系统中的文件夹。
b 块设备文件,就是保存大块数据的设备,比如最常见的硬盘。
c 字符设备文件
s 套接字文件,通常用在网络数据连接,可以启动一个程序开监听用户的要求,用户可以通过套接字进行数据通信。
p 管道文件,其主要作用是解决多个程序同时存取一个文件所造成的错误。
l 链接文件,类似 Windows 系统中的快捷方式。

1.6 列表显示目录内容 ls

ls [选项] [文件或目录]
-l 长格式显示详细信息 ll=ls -l
-a 显示全部包括隐藏文件
-A 显示全部文件或隐藏文件,不包括.和..
-d 仅列出目录本身,而不是列出目录内的文件数据
-h 友好显示文件大小,人性化带单位显示
-R 递归显示该目录及该目录的子目录下的所有内容
-t 以时间顺序显示
-r 倒序显示
--color 显示颜色
-s 以文件容量大小排序
-i 显示inode号

第2节

2.1 alias 别名机制

alias 自定义命令(不建议使用已有的命令和数字)='要优化的命令'

alias myvim=‘vim /etc/sysconfig/network-scripts/ifcfg-ens33’

unalias 删除别名

alias 单独打可以显示当前系统下所有别名

\别名 取消别名

永久改名

vim .bashrc

alias myvim=‘vim /etc/sysconfig/network-scripts/ifcfg-ens33’



临时修改

alias

unalias  删除别名

\ls 显示原来面目
cd是内部命令

如果将cd定义成别名(ls),cd还是切换目录,代表内部高

如果将cd定义成别名(ls),cd变成显示目录(ls),代表别名优先级高
优先级别

1. 绝对路径下的命令
2. 别名
3. 内部
4. hash
5. 外部

2.2 du 磁盘使用情况

查看当前所在文件夹的总磁盘占用了磁盘的多少单元块。默认一单元块为4k,不满4k算4k。

du=disk use
基本格式
du [选项] [文件或目录]
常见选项
-a:统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录
-h:以更人性化的方式(默认KB计数,不显示单位)显示统计结果
-s:只统计所占用空间总的大小,而不统计每个子目录、文件大小
--max-depth=1/n(-d):最大显示层级1级/级
--exclude:不计入统计

2.3 mkdir 创建文件夹

  • 文件名最长255个字节
mkdir -p  #递归创建
mkdir -p  aa/bb/cc  #递归创建 aa/bb/cc

mkdir -pv /mysql/{3306,3307,3308}/{data,etc,socket,log,bin,pid}
#一次建立多个文件

2.4 touch 创建空文件

  • touch 新文件…(可为空) 文件名 不存在就是新建空文件
  • touch 不会破坏已有文件 刷新文件
每个文件有三个时间戳:
access time:atime  访问时间   #读取文件内容
modify time:mtime  修改时间   #改变文件内容(数据)
change time:ctime  改变时间   #元数据发生改变(元数据  文件大小  权限)

2.5 copy 备份

cp 原文件 新文件

cp /etc/passwd /mnt/test

将etc下的passwd文件复制到mnt下并改名为test

选项 说明
-f 覆盖目标同名文件或目录时不进行提醒,直接强制复制
-i 覆盖目标同名文件或目录时提醒用户确认
-p 复制时保持源文件的权限、属主及时间标记等属性不变
-r 复制目录时必须使用此选项,表示递归复制所有文件及子目录
-a 完整保留所有的信息
-v 可视化
-u 相当于增备,差异备份(只对文件夹起作用)

2.6 which 查找命令/文件存放目录

which只能找命令,查找范围也是固定的

在固定的文件夹找,范围由环境变量PATH决定(在echo $PATH的五个路径下找)

which -a  #显示更详细

2.7 locate

locate 速度快,不是真的去硬盘上遍历去找文件,去系统的数据库文件中查找

用途:不常用文件,要存在系统上比较久
选项

-i   #不区分大小写的搜索

-n N #只列举前N个匹配项目

2.8 find 查找文件或目录

find 速度慢,他是真去磁盘上一个一个找

格式:

find  [查找范围][OPTION]...  [查找条件] [处理动作]
find  /  -name [0-9]*    #找到当前目录下所有以数字开头的文件
查找类型 关键字 说明
按名称查找 -name 按目标文件名称查找,可以使用 "*" 和 "?" 通配符
按文件大小查找 -size 根据目标文件大小查找,使用 "+" 或 "-" 进行大小限制,常用单位KB、MB、GB
按文件属主查找 -user 根据文件是否属于目标用户进行查找
按文件类型查找 -type 根据文件类型查找,文件类型有普通文件(f)、目录文件(d)、块设备文件(b)、字符设备文件(c)等


查找方式 描述
which 只能找命令,查找范围也是固定的$PATH路径
locate 速度快,不是真的去硬盘上遍历去找文件,他是去系统的数据库文件中查找
updatedb 不要轻易使用,会卡死
find 速度慢,是真的去磁盘上一个一个给你找

find 	/data/ 	-name  	‘*.txt’  	-exec 	cp{} 	\;    #复制

find 	/data/ 	-name  	‘*.txt’  	-exec 	mv{} {}.bak   \;   #改名

-exec          #连接find和cp   直接复制   一次一次处理

-ok            #连接find和cp   需要确认   一次一次处理

\;    		   #代表结束

查找路径:指定具体目标路径;不指定为默认为当前目录

查找条件:可以对文件名、大小、类型、权限等标准进行查找;默认为找出指定路径下的所有文件

处理动作:对符合条件的文件做操作,默认输出至屏幕(print)

2.9 硬连接与软连接文件

硬连接 同一个文件取不同的名或者叫多个名字,不支持文件夹,创建一个连接数加一,多路径访问。

软连接 类似于windows里快捷方式,软连接,符号连接,会指向原来的文件。

ln(link)

ln [-s] 源文件或目录… 链接文件或目标位置

加s是软连接 符号连接

对比项 硬链接 软链接
本质 本质是同一个文件 本质不是同一个文件
inode(身份证号) 相同 不同
连接数 创建新的硬链接,链接数会增加,删除硬链接,链接数减少 删除,新建都不会改变
文件夹 不支持 支持
删除源文件 只是链接数减一,但链接文件的访问不受影响 无法访问连接文件
文件类型 和源文件相同 链接文件,和源文件无关
文件大小 和源文件相同(指向硬盘上的同一个文件) 源文件的路径的长度
例子

ln   -s      绝对路径的源文件         软连接位置

ls           绝对路径源文件           硬连接位置

硬连接的本质是别名

通常只用软连接 不用硬连接

3.0 env 看环境变量



posted @   Candy独角兽  阅读(19)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示