目录
linux基础
第1节
1.1 目录
去往当前目录家目录
cd ~
cd
cd /root/
cd / 进入根目录
cd - 回到上一层目录
cd /boot 根文件夹下面的boot文件夹
/ 根是起点 所有文件的起点 根:系统的入口
/在前面是根目录 /在后面为分隔符
# 超级用户
$ 普通用户:权限受限用户
绝对路径:以根开头的文件路径,是唯一的
相对路径:不以根开头的文件路径,不一定唯一
pwd 显示当前路径
1.2 shell是什么
shell是一类软件总称
shell程序:将人类使用的高级语言,翻译成二进制语言(机器可以听懂的语言)
bash是shell的一种,CentOS默认shell:/bin/bash
每打开一个交互界面 必须加载一个shell程序
内核是操作系统的一部分,内核用于调动硬件
1.3 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.4 文件类型
七个文件类型
-
-普通文件
-
d目录文件directory
-
l符号链接文件link
-
b块设备文件block
-
c字符设备文件character
-
p管道文件pipe #一般用在内部
-
s套接字文件socket #程序之间传递信息 紫色
第一个字符 | 文件类型 |
---|---|
- | 普通文件,包括纯文本文件、二进制文件、各种压缩文件等。 |
d | 目录,类似 Windows 系统中的文件夹。 |
b | 块设备文件,就是保存大块数据的设备,比如最常见的硬盘。 |
c | 字符设备文件 |
s | 套接字文件,通常用在网络数据连接,可以启动一个程序开监听用户的要求,用户可以通过套接字进行数据通信。 |
p | 管道文件,其主要作用是解决多个程序同时存取一个文件所造成的错误。 |
l | 链接文件,类似 Windows 系统中的快捷方式。 |
1.5 ls
ls [选项] [文件或目录] | |
---|---|
-l | 长格式显示文件和目录列表,显示详细信息 ll=ls -l |
-a | 显示全部包括隐藏文件 |
-A | 显示全部文件或隐藏文件,不包括.和.. |
-d | 仅列出目录本身,而不是列出目录内的文件数据 |
-h | 友好显示文件大小,人性化带单位显示 |
-R | 递归显示该目录及该目录的子目录下的所有内容 |
-t | 以时间顺序显示 |
-r | 倒序显示 |
--color | 显示颜色 |
-s | 以文件容量大小排序 |
第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。
disk use
du --max-depth=1 最大显示层级1级
2.3 mkdir 创建文件
- 文件名最长255个字节
mkdir test
mkdir test1 test2
mkdir -p aa/bb/cc 递归创建
mkdir -pv /mysql/{3306,3307,3308}/{data,etc,socket,log,bin,pid}
一次建立多个文件
2.4 touch
- touch 新文件…(可为空) 文件名 不存在就是新建空文件
- touch 不会破坏已有文件 刷新文件
ln -s 绝对路径的源文件 软连接位置
ls 绝对路径源文件 硬连接位置
对比项 | 硬链接 | 软链接 |
---|---|---|
本质 | 本质是同一个文件 | 本质不是同一个文件 |
inode(身份证号) | 相同 | 不同 |
连接数 | 创建新的硬链接,链接数会增加,删除硬链接,链接数减少 | 删除,新建都不会改变 |
文件夹 | 不支持 | 支持 |
删除源文件 | 只是链接数减一,但链接文件的访问不受影响 | 无法访问连接文件 |
文件类型 | 和源文件相同 | 链接文件,和源文件无关 |
文件大小 | 和源文件相同(指向硬盘上的同一个文件) | 源文件的路径的长度 |
2.5 copy 备份
cp 原文件 新文件
cp /etc/passwd /mnt/test
将etc下的passwd文件复制到mnt下并改名为test
选项 | 说明 |
---|---|
-f | 覆盖目标同名文件或目录时不进行提醒,直接强制复制 |
-i | 覆盖目标同名文件或目录时提醒用户确认 |
-p | 复制时保持源文件的权限、属主及时间标记等属性不变 |
-r | 复制目录时必须使用此选项,表示递归复制所有文件及子目录 |
-a | 完整保留所有的信息 |
-v | 可视化 |
-u | 相当于增备,差异备份(只对文件夹起作用) |
2.6 find 查找文件
格式:
find [查找路径][OPTION]... [查找条件] [处理动作]
查找方式 | 描述 |
---|---|
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)
**重启 #reboot 或者 init6**
**查看当前系统内存 #free -h**
标签:文件,别名,cd,命令,ls,Linux,目录
From: https://www.cnblogs.com/LJ69/p/17565152.html