Linux基本操作命令
- 1.shell学习
-
- 1.1 什么是shell?
- 1.2 shell的优点
- 2.Linux命令的分类
-
- 2.1 Linux命令的格式
- 2.2 绝对路径 vs相对路径
- 3.列表显示目录内容ls
- 4.在xshell中用ls查看文件时颜色表示:
- 5. 设置别名-alias
- 6. 统计目录及文件空间占用情况-du
- 7.创建新目录-mkdir
- 8.创建空文件-touch命令
- 9.创建链接文件-ln
- 10.复制文件或目录-cp
- 11.删除文件rm
- 12.移动文件或目录——mv
- 13.查找文件或目录-find
- 14.查找命令、文件存放目录-which
本章结构
1.Linux命令基础
2.Linux命令帮助
3.目录与文件基本操作
1.shell学习 重点:内核 是用来识别二进制的(相当于操作系统)
1.1 什么是shell? (特殊程序:即软件eg:吃鸡、qq) Shell为什么能自动加载【以上解释】
用户输入命令——解释命令(翻译成计算机能识别的语言)是用户和内核之间的翻译官——进入内核(内核执行调用我们的硬件)【之前是shell的运行过程】——用户登录Linux系统之后——shell自动加载一个程序——这个程序是在/bin/bash下的。
1.Linux系统中运行的一种特殊程序2.在用户和内核之间充当翻译官3.用户登录Linux系统是自动加载一个Shell程序4.Bash是Linux系统中默认使用的Shell程序5.文件位于/bin/bash
文章图片
1.2 shell的优点 shell是Linux系统中后台运行的一种特殊程序也可以理解成一种特殊的软件,提供了用户与内核进行交互操作的一种接口。
用户使用应用程序发布指令比如(使用浏览器访问网页)
shell去通知操作系统需要进行什么样的操作(相当于解释层)
内核相当于操作系统去指挥硬件,硬件才能工作,否则无法交互。
1.一切都是一个文件。(包括硬件)
2.系统中拥有小型,单一用途的程序。(一个程序只负责做好自己的本职工作)
当遇到复杂任务,通过不同功能用途的程序组合起来完成。
3.避免令人困惑的用户界面就是没有复杂的图形界面。
4.连配置文件都存储在文本中,方便增删改查。
5.不在乎后缀名,有没有都无所谓,不是通过后缀名来定义文件的类型。
2.Linux命令的分类
文章图片
###查看内部命令
type -a可以显示所有可能的类型,比如有些命令如pwd是shell内建命令,也可以是外部命令;
type -p只返回外部命令的信息,相当于which命令;
type -f只返回shell函数的信息;
type -t只返回指定类型的信息
help
Enable
type
禁用内部命令enable -n
[ root@localhost / ]# type cd
cd是shell 内嵌//内嵌代表内部命令
[root@testl ﹔ ]typels
Ls 是ls--color=auto 的别名
[root@testl ﹔ ]type-als
Ls 是ls--color=auto 的别名//别名代表外部命令
ls是/usr/bin/ ls//外部命令会有程序路径
[root@localhost / ]# where is//whereis可以查找命令具体的位置所在
ls: /usr/bin/ls /usr/share / man/ man1/ls.1.gz / usr/share/ man/ man1p/ls.1p .gz
[ root@localhost~]type -a echo
echo是shell内嵌
echo 是/usr/bin/echo
文章图片
外部命令就相当于
开启一个进程
,这个可想而知,那我们平时又怎么区分内部命令和外部命令呢?只需要在命令前加上一个type和空格
。外部命令存放于echo$PATH一个一个找,找到为止,找不到就报无命令
[root @localhost~] # echo $PATH
/usr/local/sbin:/ usr/local/sbin:/ usr /sbin : /root/bin
外部命令使用过后会被记录在内存(缓存,但是会占用内存,临时性的)加快读取速度
[ root@localhost~]# Lype useradd
useradd是/ usr / sbin/ useradd
[root@localhost~]useradd wu
[root@localhost~]# type useradd
useradd`己被哈希`(/usr/sbin/useradd)[root@localhost~]# hash//或者使用hash[root@localhost~]#hash //清楚dd命令缓存-r全清
[root@localhost~]#hash[root@localhost~]which ping//外部命令的磁盘路径-a所有
/usr/bin/[root@localhost ~jt which help//内部命令找不到
/ usr/bin/ which: no help in (/usr/local/sbin:/usr/local/sbin:/ usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
[root@localhost~]# **where is echo** //相关文档的帮助的命令
echo: /usr/bin/echo / usr/ share/man/man1/echo.1.gz /usr/share / man/ manlp/ echo.lp.gz
2.1 Linux命令的格式 通用的命令行使用格式**:
命令字 (空格){选项}(空格) {参数}
命令字
1)是整条命令中最关键的一部分
2)唯一确定一条命令
选项
1)短格式选项:使用-符号引导 通常引导一个字母
2)长格式选项:使用- -符号引导 通常引导一个完整的单词
参数
1)命令字的处理对象
2)可以是文件名、目录(路径)名或用户名等内容
3)个数可以是零到多个
文章图片
文章图片
编辑Linux命令行
编辑Linux命令行的辅助操作
Tab建:自动补齐反斜杠\:强制换行Ctrl+U组合键:清空至行首Ctrl+K组合键:清空至行尾Ctrl+L组合键:清屏Ctrl+C组合键:取消本次命令编辑Ctrl+E组合键:光标到尾Ctrl+A组合键:光标到首
获取命令的帮助方法
内部命令help
查看Shell内部命令的帮助信息
eg:help cd
命令的- -help选项
适用于大多数Linux外部命令
eg:ls - -help
使用man命令阅读手册页
使用↑、↓方向键滚动一行文本使用Page Up和Page Down键翻页按Q或q键退出阅读环境按\键查找内容
文章图片
1、命令帮助help和--help
显示命令的帮助信息,命令的参数和用法等```bash
2、 man手册的使用
linux的命令手册大全
用法:man cd**查找翻页**
n向下; N问上Man ls |col -b > lshelp.txt
在这个例子中,col是个命令程序,用于过滤文本中的一些特殊控制字符:
另外还使用了"|"和"">"符号
管道: 用竖杠符号"|“表示,用于将前面命令的屏幕输出结果作为后面命令的操作对象(输入),就好像一根管道一样
重定向输出: 用大于符号”>“表示,前面的命令成功执行以后,其屏幕输出结果将保存到”>"号后边指定的文件中。
文章图片
目录和文件的管理命令
查看当前工作目录: pwd
[ root@localhost ~]#pwd/ root
切换工作目录: cd(相对路径、绝对路径)
cd /home#后面跟绝对路径,切换到home目录
cd ./home#后面跟相对路径,切换到home目录
cd ~#切换到当前用户的家目录
cd#切换到当前用户的家目录
cd ~user#切换到某个用户的家目录,只有root才行,别的用户只能在自已家。
cd-#切换到上一次执行操作的目录
cd..#切换到上一层目录(父目录)
"."表示当前目录 cd 代表移动到后面指定的目录位置
cd . 就表示的意思是移动到当前目录
eg:而".." 代表上一层目录,比如我现在在/opt/abc/bc/c 这个位置,那么cd ..就是到/opt/abc/bc/目录(我以绝对路径方式解释)
思考:如何切换到父目录的父目录(cd …/ …/)
2.2 绝对路径 vs相对路径
文章图片
文章图片
只要从根开头的都是绝对的,其余的都是相对的。
绝对路径:eg:/home/kgc
相对路径:eg: cd|home|cd kgc
3.列表显示目录内容ls 操作 功能 要执行的对象
-l#将文件信息属性详细列出,通常直接使用ll因为设置了别名-R#递归现实,比如一个目录下还有文件,则把那个文件也一起列出-d#查看目录本身信息,不显示目录下的内容-i#显示inode值-h#友好显示文件大小-a#遍历所有文件及目录
(ls内定将文件名或目录名称开头为“.”的视为隐藏档,不会列出)-A#跟-a唯一的把不同是不列出当前目录和上一层目录
eg1:ls -lh /dev/sd?1
?代表一个未知字符;显示Dev下的sd?1的文件
e:2:ls -lh /etc/ns * .conf
*代表:任意多个未知字符;显示ns开头的.conf文件
eg3:
drwxr-xr-x 3 root root 16 8月 21 10:39 aa
其中d 代表文件类型eg:d是目录 -是普通文件
第2-9(rwxr-xr-x)字母表示该文件的权限
root表示 文件所有者
root表示 文件所属组
16 表示文件大小
21 10:39 表示 文件的最近使用时间
aa表示 文件或目录名称扩充:
- 普通文件
d 目录文件directory
b 块设备文件block
p 管道文件pipe
s 套接字文件 socket
l 符号链接文件link
文章图片
文章图片
文章图片
4.在xshell中用ls查看文件时颜色表示:
黑色 代表数据文件
黄色 块设备文件
白色 数据文件TXT
绿色 可执行文件
红色 压缩包
蓝色 目录(文件夹)
天蓝色 连接文件(快捷方式)
粉色 图片
文章图片
结合通配符
?:匹配文件名中的一个未知字符 eg:f?.txt
* :匹配文件名中的任意多个字符[常用]
{1..10}:1到10
{a..z} ;a b c...z
{A..Z} :A B C ..Z
【123】:取其中之一;有就显示没有也无所谓
【a-z】:范围需要注意
【0-9】:匹配数字范围(0123456789)
\:转义符,表示原来的意思
[[:lower:]] :小写字母表示 a-z
[[:upper:]] : 大写字母表示A-Z
[^zhou] :匹配列表中的所有字符以外的字符
[[:diqit:]]:任意数字,相当于 0-9
5. 设置别名-alias 通过别名机制简化常用的比较长的命令
1.
alias
别名=’原命令 -选项/参数’
需要临时修改别名以便于使用时,格式为:alias(空格)命令名=‘别名’。
[root@localhost ~]# alias net='vim /etc/sysconfig/network-scripts/ifcfg-ens33'
[root@localhost ~]# net
文章图片
做完这个操作之后需要重新启动网卡:
systemctl restart network #重启所有的网卡
alias//查看系统当前所有可用别名
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'alias ll='ls -lt'###设置别名
这样设置了ls -lt命令的别名是ll,在终端输入ll时,则相当于输入了ls -lt命令。注意: 在定义别名时,等号两边不能有空格,否则shell不能决定您需要做什么。仅在命令中包含空格或特殊字符时才需要引号。如果键入不带任何参数的alias 命令,将显示所有已定义的别名。
2.查看已经设置的别名列表
alias -p1
3.删除别名
格式:unalias 别名1
eg:unalias ll #删除别名
永久生效
vim/root/.bashrc
临时修改
-alias命令别名=命令
-unalias 别名命令//删除别名
-\加命令 原始命令
示例
设置myls为ls-alh的别名
alias myls=‘ls -alh’
6. 统计目录及文件空间占用情况-du 统计指定目录所占磁盘空间的大小
du【选项】【文件或目录…】
【Linux基础|Linux基本操作命令】常用选项
-a 统计磁盘空间占用时包括所有的文件,而不仅仅只同级目录-h 以更人性化的方式显示出统计结果-s 只统计所占用空间总的大小而不是统计每个子目录文件的大小
du -a统计所以文件目录
Du -ah以更友好的方式统计出结果
Du -sh显示当前目录大小
Du -sh kgc/查看课工场目录大小
Du -sh *看某个文件多大
Du -sh /etc/查看所有文件大小**示例**
统计出/var/log目录所占用空间的大小
du -sh /var/log/
文章图片
7.创建新目录-mkdir 创建新的空目录
mkdir【选项】目录位置及名称...p:一次性创建嵌套的多层目录
eg:在当前目录下创建名为public_zzh的子目录
mkdir public_zzh
2.创建目录/aa,在/aa目录下创建子目录bb,在/aa/bb目录下创建子目录cc
mkdir -p /aa/bb/cc
-p 是从属关系是嵌套的,没有-p就是在同一目录下
若想用tree命令查看树形结构
首先应该 ping www.baidu.com
yum install
pwd
ls -R ky19/或者 tree ky19/
文章图片
文章图片
文章图片
文章图片
文章图片
8.创建空文件-touch命令
1.更新文件的时间标记
2经常用于创建多个新的空文件
touch 文件...
eg:创建两个空文件,文件名分别为aa和bb
touch aa bb
文章图片
文章图片
文章图片
文章图片
9.创建链接文件-ln 为文件或目录建立链接文件,类似于Windows系统的快捷方式
链接文件类型
软连接(又称为符号链接)硬链接ln 【-s】源文件或目录...链接文件或目标位置
文章图片
文章图片
文章图片
文章图片
10.复制文件或目录-cp 源文件复制到目标文件
cp【选项】…源文件或目录…目标文件或目录…
常用选项
-f 覆盖目标同名文件或目录时不进行提醒,直接强制复制-i 覆盖目标同名文件或目录时提醒用户确认-p 复制时保持源文件的权限、属主及时间表及等属性不变-r 复制目录时必须使用此选项,表示递归复制所有文件及子目录
文章图片
文章图片
简单来说就是因为:文件夹里面不可以建文件
11.删除文件rm
-i 删除文件或目录时提醒用户确认-r 删除目录时必须使用此选项,表示递归删除整个目录树-f 删除文件或目录是不进行提醒而直接强制删除
常用的用法:rm -rf /*
删除空目录 :rmdir
文章图片
文章图片
12.移动文件或目录——mv
格式:mv[选项]源文件或目录 目标文件或目录
情况1
:源位置与目标位置相同时,相当于执行重命名操作文章图片
情况2
:跨目录移动(把原本根目录下的7.log移动到home的zzh目录下)文章图片
13.查找文件或目录-find 采用递归方式根据目标的名称、类型、大小等不同属性进行精细查找
格式:find [查找范围] [查找条件表达式](查找范围必须在前面)
及时查找、精确查找、支持查找的条件比较多
同时使用多个条件查找时,可用逻辑运算符
各表达式之间使用的逻辑运算符
-a 表示而且 (and)-o 表示或者(or)
常用查找条件类型
按名称查找 -name 根据目标文件的名称进行查找允许使用通配符按文件大小查找 -size 根据目标文件的大小进行查找,使用+ - 设置超过或小于指定的大小为查找条件按文件属主查找-user 根据文件是否属于目标用户进行查找按文件类型查找 -type 文件类型包括普通文件(f)目录(d)块设备文件(b)字符设备文件(c)等
案例1:
-name :根据目标文件进行查找,允许使用“*”及“?”通配符
文章图片
-type: 根据目录文件的大小进行查找,一般使用“+“ “-”号设置超过或小于你指定的大小作为查询条件。
文章图片
-user: /home 是非管理员用户的家目录,管理员用户的家目录在/root
文章图片
在boot目录里查找尺寸大于1的
**-o代表或者**
或者 名字里面包含root的
文章图片
-ok ? ? -ecec?
格式:
-exec COMMAND {} \:(查找到的每个文件执行COMMAND指定的命令)
-ok COMMAND {} \:(对于每个执行文件之前,都会交互式要求用户确认)
{}:用于引用查找到的文件名本身
find /var/ -mtime +10 -name “*.tar.gz” -exec rm -rf {} \ ;
14.查找命令、文件存放目录-which
格式:which 命令/程序名或者which -a 命令|程序名
搜索环境变量由PATH决定,默认找到第一个后就不再继续
情况一:
文章图片
情况二:
文章图片
小插曲:
**`当我们不知道一个命令是什么意思的时候就可以用whatis(空格)命令查询,查询命令名称——whatis **
例如:
文章图片
测试网络连接
ping
traceroute (静态跟踪)
mtr(动态跟踪)
重启系统
reboot
init 6
shutdown -r now
关机
poweroff
init 0
shutdown -h now
shutdown -c
小知识:
给命令行提示字符加颜色
PS1="\[\e[1;
34m\][\u@\h \W]\\$\[\e[0m\] "PS1="\[\e[1;
35m\][\[\e[1;
34m\]\u\[\e[1;
36m\]@\[\e[1;
34m\]\h \[\e[1;
31m\]\w\[\e[1;
35m\]]\[\e[1;
36m\]\\$\[\e[0m\] "\[\e[1;
35m\][ ====> 定义左边的"["
\[\e[1;
34m\]\u ====> 定义用户名
\[\e[1;
36m\]@ ====> 定义"@"
\[\e[1;
34m\]\h ====> 定义第一个点(.)之前的主机名
\[\e[1;
31m]\w ====> 定义目录完整路径
\[\e[1;
35m]] ====> 定义"]"
\[\e[1;
36m\]\\$ ====> 定义"#"或"$"
\[\e[0m\] ====> 一段不显示字串的结束
【总结】
cp的高级用法:cp -v file.txt{,.bak}用于备份
sudo yum -y install tree下载树状图命令
Linux常用命令:
查看及切换目录(pwd、 cd、 ls、 du)
创建目录和文件(mkdir、 touch、 ln)
复制、删除、移动目录和文件(cp、 rm、 mv)
查找目录和文件(which、 find)
重启(init 6)
喜欢记得给小编点个小心心哦!
记得关注我哦!
推荐阅读
- 【技术杂文】系列|嵌入式端的神经网络算法部署和实现综合
- 三种方法检查ssl证书
- Linux|转载(Linux的二号功臣-Alan Cox)
- GNU、Linux和GNU/Linux之间的关系
- 内核|linux(使用yum安装_首次使用Linux:30个安装案例)
- PHP|PHP 解压 ZIP 压缩包,解决多级中文乱码问题
- linux搭建redis
- linux|AppArmor快速入门
- 我的|RPMBUILD 打包