目录
目录
一、shell
- Linux系统中运行的一种特殊程序
- 在用户和内核之间之间充当“翻译官”
- 用户登陆Linux系统时,自动加载一个Shell程序
- Bash是Linux系统中默认使用的Shell程序
内核:用于调用计算机硬件资源
shell:将用户指令转换成计算机语言让内核去调用计算机硬件资源
bash是一个文件
bash文件位于/bin/bash
二、Linux命令分类
区别:
日常工作中,对于系统用户来讲其实很少关注内部命令和外部命令,只要使得顺手正常,很少有人去关注这部分内容。但在环境复杂或系统状态异常(被入侵)等情况下,我们更建议使用绝对路径下的外部命令。当然,Linux系统也提供了相关命令来区别二者,type区分内部命令与外部命令。 使用:type [-a | -t | -p] name 或 type [-all | -type | -path] name。
(1)没有参数的状况下,它会显示出shell如何解译name做为命令。
(2)如果有”-type”,它将会显示alias、 keyword、function、builtin或file。
file:表示为外部指令;
alias:表示该指令为命令别名所设定的名称;
builtin:表示该指令为 bash 内建的指令功能。
(3)如果有”-path”的参数,它将会显示该命令的完整档名(外部指令)或显示为内建指令,找不到的话,不显示任何东西。 (4)如果有”-all”的参数,会将由PATH变量定义的路径中所有含有name指令的路径都列出来,即显示所有可执行name的可能路径。
三、Linux常用命令
1、内部命令
type #查询内部外部指令
enable-n + 指令 #禁用内部指令
help #帮助
ls --help #外部命令查询帮助
help cd #内部命令查询帮助
echo #shell内嵌/也可以是外部指令(给出具体命令所在)
hash #可以直接调取缓存中的指令
which + 指令 #查询指令所在路径与别名
ls
2、命令行格式
命令字:唯一确定一条指令,是整条命令中最关键的部分
选项:长格式:使用“- -”符号引导;短格式:使用“-”符号引导
参数:用来处理对象;可以是文件名、目录(路径)名或者用户名等内容;个数可以是0到多个
3.Linux命令行的辅助操作
Tab键:自动补齐/按两下帮忙查询相同前缀的目录或文件(cd会显示目录,vim会显示文件)
反斜杠“\”强制换行(在长命令的情况下使用便于排错,更加工整)
Ctrl+U组合键:清空至行首
Ctrl+K组合键:清空至行尾
Ctrl+L组合键:清屏,或者clear
Ctrl+C组合键:取消本次命令编辑
Ctrl+A组合键:切换到行首
Ctrl+E组合键:切换到行尾
3、基本使用
常见使用方式:命令字 选项 参数
命令字 + 参数,例如cd cat ls du hostname cp find
命令字 ls su cd pwd du
hostnamectl set-hostname ds
pwd 输出当前位置(绝对路径)
1、hostname
2、pwd
3、ls
参数:路径类型/opt 名称 数值类型 find ./ -size +4M
为什么要加以上指定类型的参数???
因为命令的基础职能决定了你可以选择的参数类型
ls 基础职能 查看指定目录下的文件、目录等对象
ls 如果要看单个参数的话,直接写:位置+目录名称(绝对路径)/
小需求:我要看/opt目录下的abc子目录中有哪些东西?
[ root@localhost ~]# ls /opt/rh
[ root@localhost /]# ls /opt/abc
4、cd
cd 单参数(绝对/相对路径 + 目录)
5、cp
cp 2个参数
cp职能将原文件/目录复制到目标位置(目录) 如果是目标位置有同名的文件/目录的话,表示覆盖
cp [参数1]文件/目录 [参数2]目录
[ root@localhost /]# 现在位置
要求1:将opt复制到mnt中
cp -r /opt /mnt
cp 参数1 参数2
参数1 一定是原位置,也就是要复制的对象
参数2 表示目标位置,也就是我们要复制“到”的地方
6、mkdir
基本职能:在指定位置创建新的目录(根据路径判断在哪创建)
-m,--mode=模式,设定权限<模式>(类似chmod)。
-p,--parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建好那些尚不存在的目录,即一次可以建立多个目录。
-v,--verbose 每次创建目录都显示信息。
7、touch
要求在/opt/rh中创建一个test文件
现在是一台新的机器,要求在/data目录下创建1.txt 文件
mkdir /data
touch /data/1.txt
8、cat
cat 基本职能为仅查看“文件”的内容
cat
可以+多个参数
cp -r /opt/abc /mnt/* #"*" 无意义
cp -r /opt/abc /mnt*/ #"*" 代表:
cp -r /opt/* /mnt #"*" 匹配原目录下中所有的东西
cp 复制
mv 1、剪切并复制到指定位置(并自定义名字,也可以默认) 或 2、改文件/目录名称(自定义名称)
mv 简述了mv的基本职能 解释了大概的使用方式
mv 参数1 参数2
功能1:做为剪切并复制到指定位置(并自定义名字,也可以默认)这个功能来看的话:
参数1 :指的是要剪切的原文件/目录
参数2 :将剪切的原文件/目录要复制(移动)到的位置
功能2:改文件/目录名称(自定义名称)
改名字: 需不需要移动(不需要切换路径)
4、Find
find 基本职能 “按条件”尽可能的精确“匹配”到“需要查找的对象”(任意类型)
选项的直接用法
按条件匹配:
① 按照名称
② 按照大小
③ 按照文件类型
④ 按照时间参数
⑤ 按照文件指定的拥有者和指定的管理组织(属主和属组)
1、东西太多,不好找,不易精确、快速找到
find 可以在庞大的一个操作系统中,按照自定义的条件(根据条件的精确性和多样性),尽可能的自动帮助我们快速的
找到我们需要的对象
2、为什么find 至少有以上5条条件匹配方式?
find 目的是找文件/目录。而目录/文件是不是有自己的基本属性,例如大小、时间、归属者和组织、名称、类型
① 名称:-name
-name :精确的名字
② 大小:-size
-size :可以跟> < = 分别表示在一个指定值之上/之下和/近似
单位: KB M GB
③ 文件类型:-type
-type :根据文件本身的类型来定义条件的 -f -d -b -c -l
④ 按照时间参数:-ctime -atime -mtime
⑤ 使用者和隶属的管理组织(属主和属组) :-user -group
任意满足一个条件 -o
所有条件均需要满足 -a
颜色区别
白色:数据文件 txt
深蓝色:目录
白色(黑色):一般文件
绿色:可执行的文件(脚本/程序)
黄色:块设备文件
红色:压缩包
淡蓝色:链接文件/快捷方式
5、pwd——查看当前的工作目录
pwd #显示用户当前所在工作目录位置
输出:使用 pwd 命令查看指定文件夹
[root@qwf ~]# pwd/root
6、cd——切换工作目录(相对路径、绝对路径)
cd / 切换到根目录
cd /usr 切换到根目录下的usr目录
cd ../ 切换到上一级目录 或者 cd ..
cd ~ 切换到home目录
cd - 切换到上次访问的目录
7、扩充
普通文件
d 目录文件 directory
b 块设备文件 block
p 管道文件 pipe
s 套接字文件 socket
l 符号链接文件 link
rwx
r 代表文件可读
w 代表文件可写入可修改
x 代表文件可执行
有x权限文件会变成绿色
8、设置别名-alias
通过别名机制简化常用的、比较长的命令
alias 命名别名 = 命令
示例
命令:
alias #查看系统当前所有可用别名
alias ll=‘ls-lt’#设置别名
unalias #删除别名
vim /root/.bash 永久生效
注意:在定义别名时,等号两边不能有空格,否则shell不能决定您需要做什么。仅在命令中包含空格或特殊字符时才需
9、统计目录及文件空间占用-du
统计指定目录(或文件)所占用磁盘空间的大小
du [选项] [文件或目录…]
常用选项
-a :统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录
-h:以更人性化的方式(默认以KB计数,但不显示单位)显示出统计结果
-s:只统计所占用空间总的大小,而不是统计每个子目录、文件的大小
10、 创建新目录-mkdir
mkdir /opt/sj #创建目录,注意:父目录必须存在
-p: 创建一个已有的目录会报错,加-p则不会报错/当父目录不存在时,递归创建
mkdir {a…t} 添加a到t的目录
mkdir a{1…10} 添加a1到a10的目录
rmdir 删除一个空目录
11、创建空文件-touch命令
新建文件【增】touch
命令:touch 文件名
示例:在当前目录创建一个名为aa.txt的文件 touch aa.txt
12.创建链接文件-ln
为文件或目录建立链接文件,类似于Windows系统的快捷方式
链接文件类型
软链接(又称为符号链接)
硬链接
ln -s 创建软链接,相当于创建一个快捷方式(示例:ln -s /bin/bzip2/bin/wx/)
ln 创建硬链接,相当于复制了一份副本
硬软链接区别:
硬链接不能跨分区建立连接 无法对文件夹创建
删除硬件连接可以继续访问硬链接
软链接可以跨设备 可以支持文件夹
软链接删除源文件不能访问
软链接一般用在磁盘空间不够的时候
总结:
熟悉linux基本的一些命令及使用
熟练掌握命令的变化组合使用