Linux命令的分类
Linux命令
用于实现某一类功能的指令或程序
命令的执行依赖于解释器程序(例如:/bin/bash)
Linux命令的分类
内部命令:属于Shell解释器的一部分
外部命令:独立于Shell解释器之外的程序文件
用命令type来区分命令是内部还是外部命令
例:type cd/type ping

Linux命令的通用命令格式
命令字 [选项] [参数]
选项及参数的含义
选项:用于调节命令的具体功能
以 “-”引导短格式选项(单个字符),例如“-l”
以“–”引导长格式选项(多个字符),例如“–color”
多个短格式选项可以写在一起,只用一个“-”引导,例如“-al”
参数:命令操作的对象,如文件、目录名等
命令行编辑的几个辅助操作
Tab键:自动补齐
反斜杠“\”:强制换行
快捷键 Ctrl+U:清空至行首
快捷键 Ctrl+K:清空至行尾
快捷键 Ctrl+L:清屏
快捷键 Ctrl+C:取消本次命令编辑

获得命令帮助
内部命令help
查看Bash内部命令的帮助信息
命令的“–help” 选项
适用于大多数外部命令
使用man命令阅读手册页
使用“箭头上”、“箭头下”方向键滚动文本
使用Page Up和Page Down键翻页
按Q或q键退出阅读环境、按“/”键后查找内容
使用info命令阅读信息页

文件和目录管理
目录操作命令
pwd、cd、ls、mkdir、du
文件操作命令
touch、file、cp、rm、mv、which、find、ln
文件内容操作命令
cat、more、less
head、tail、wc、grep
归档及压缩命令
gzip、bzip2、tar

目录操作命令
pwd命令
用途:查看工作目录(Print Working Directory)

cd命令
用途:切换工作目录(Change Directory)
格式:cd [目录位置]
cd 进入用户的主目录
cd ~ 进入用户的主目录
cd - 返回进入此目录之前所在的目录
cd … 返回上级目录
cd …/… 返回上两级目录

ls命令
用途:列表(List)显示目录内容
格式:ls [选项]… [目录或文件名]
常用命令选项
-l :以长格式显示 (length 长度)
-a:显示所有子目录和文件的信息,包括隐藏文件
-d:显示目录本身的属性
-A:类似于“-a”,但不显示“.”和“…”目录的信息
-h:以更易读的字节单位(K、M等)显示信息
-R:递归显示内容
–color:以颜色区分不同类型文件

  • 匹配任意字符
    ?匹配一个字符,在示例中出现了三个???说明要匹配的是三个字符。如果把示例中的三个问号减少一个,就查不到结果了。
    -a 可以让我们查看到隐藏文件。那么创建隐藏文件如何做呢?
    我们创建一个文件是: touch 文件名
    如果想将这个文件创建成隐藏的文件,我们就: touch .文件名 在文件名的前面加入“.”就可以了
    alias 自定义的别名 = ‘被定义的命令’ alias lis = ‘ls’

mkdir命令
用途:创建新的目录(Make Directory)
格式:mkdir [-p] [/路径/]目录名

du命令
用途:统计目录及文件的空间占用情况(estimate file space usage)
格式:du [选项]… [目录或文件名]
常用命令选项
-a:统计时包括所有的文件,而不仅仅只统计目录
-h:以更易读的字节单位(K、M等)显示信息
-s:只统计每个参数所占用空间总的大小

文件操作命令

touch命令
用途:新建空文件,或更新文件时间标记
格式:touch 文件名…
只占用inode节点,没有占用空间

file命令
用途:查看文件类型
格式: file 文件名…

cp命令
用途:复制(Copy)文件或目录
格式:cp [选项]… 源文件或目录… 目标文件或目录
常用命令选项
-r:递归复制整个目录树
-p:保持源文件的属性不变
-f:强制覆盖目标同名文件或目录
-i:需要覆盖文件或目录时进行提醒
-a: 将整个目录递归复制,并且将权限也复制过来
cp ~/.bashrc /tmp/bashrc 将主文件夹下的.bashrc文件复制到/tmp/bashrc中
cp -a /etc /tmp/test 将/etc下的全部文件全部复制到/tmp/test下,这个时候会自动创建一个目录test

rm命令
用途:删除(Remove)文件或目录
格式:rm [选项]… 文件或目录
常用命令选项
-f:强行删除文件或目录,不进行提醒
-i:删除文件或目录时提醒用户确认
-r:递归删除整个目录树
将/tmp 下的bashrc删除掉,并且询问用户是否删除掉。 cd /tmp -----> rm -i bashrc

mv命令
用途:移动(Move)文件或目录
若如果目标位置与源位置相同,则相当于改名
格式:mv [选项]… 源文件或目录… 目标文件或目录
mv bashrc test就是将bashrc 移动到test 下
mv test test1 这是重命名

which命令
用途:查找Linux命令文件并显示所在的位置
搜索范围由 PATH 环境变量指定
格式:which 命令或程序名
echo $PATH 输出当前所有环境变量

find命令
用途:用于查找文件或目录
格式:find [查找范围] [查找条件]
常用查找条件
-name:按文件名称查找
-size:按文件大小查找
-user:按文件属主查找
-type:按文件类型查找
一般正规文件:f
设备文件:b(块设备文件),c(字符设备文件)
目录:d
连接文件:l
socket:s
FIFO:p
权限: perm 最高权限:777
find . -type f -atime -7:查找七天之内的文件
find . -type f -amin +7:查找超过7分钟的文件
find / -type f -perm 777:权限查找
find . -type f -name “aaa” ! -perm 777:(查找当前目录下名字为aaa的权限不是最高的普通文件)反向选择
find $HOME/ . -name “.txt" -ok rm -rf {} ; 查找并删除普通用户的宿主目录下.txt结尾的所有文件
find . -type f -user root -exec chown zz {} ; 把当前目录下的普通文件的属主改成 zz
find . -type f -name "
.txt” -exec cat {} ; > zz.txt 把所有.txt的文件合并到zz.txt
给最高权限:chmod 777 + 文件或目录

ln命令
用途:ln命令用来为文件创件连接,连接类型分为硬连接和符号连接两种,默认的连接类型是硬连接。如果要创建符号连接必须使用"-s"选项。
格式:ln [-s] 源文件或目录… 链接文件或目标目录
常用命令选项
-s:建立符号链接文件(省略此项则建立硬链接)
关于链接文件
符号链接:指向原始文件所在的路径,又称为软链接
硬链接:指向原始文件对应的数据存储位置
不能为目录建立硬链接文件
硬链接与原始文件必须位于同一分区(文件系统)中
软连接文件被删除后,链接失效
硬链接文件被删除后,链接不失效

内部命令、外部命令有什么区别?
内部命令为bash程序内置,无需对应的外部程序文件,执行速度更快
Linux命令行的通用格式是什么?
命令字 选项 参数
绝对路径、相对路径的含义分别是什么?
绝对路径即从根目录”/“开始表示的目录或文件位置,相对路径是相对于当前目录或用户宿主目录的其他文件或目录的路径

cat命令
cat 本质可以读取二进制文件。
cat -n 输出行号 等价于nl命令
可以把光盘做成iso镜像。也可以把系统光盘做成U盘启动盘
用途:显示出文件的全部内容
more命令
用途:全屏方式分页显示文件内容
交互操作方法:
按Enter键向下逐行滚动
按空格键向下翻一屏、按b键向上翻一屏
按q键退出
less命令
用途:与more命令相同,但扩展功能更多
交互操作方法:
与more命令基本类似,但个别操作会有些出入
简单演示cat、more、less命令的用法
more命令结合管道操作使用时(例如:ls -R /etc | more)无法向上翻页,但less命令可以
在分页阅读界面中,到文件末尾时more命令会自动退出,less命令不会
more和less都可以用于分页查看文本内容,具体使用哪一个看用户习惯

head命令
用途:查看文件开头的一部分内容(默认为10行)
格式:head -n 文件名
tail命令
用途:查看文件结尾的少部分内容(默认为10行)
格式:tail -n 文件名
tail –f or tailf 文件名 实时监控
tail命令结合“-f”选项使用时,可以用于跟踪日志文件末尾的内容变化,实时显示更新的日志内容

wc命令
用途:统计文件中的单词数量(Word Count)等信息
格式:wc [选项]… 目标文件…
常用命令选项
-l:统计行数 line
-w:统计单词个数 word
-c:统计字节数
wc命令未指定选项时,默认相当于”-lwc“,会同时统计行数、单词数、字节数(含空格、回车等符号)

grep命令
用途:在文件中查找并显示包含指定字符串的行
格式:grep [选项]… 查找条件 目标文件
常用命令选项
-i:查找时忽略大小写
-v:反转查找,输出与查找条件不相符的行
查找条件设置
要查找的字符串以双引号括起来
“^……”表示以……开头,“……KaTeX parse error: Expected group after '^' at position 11: ”表示以……结尾 “^̲”表示空行
grep -c:统计行数
grep -o:统计字母

netstat -anpt 差看服务信息(状态)

管道和重定向
1.定义:
管道命令符“|”的作用是将前一个命令的标准输出作为后一个命令的标准输入,格式为“命令A | 命令B”
利用Linux所提供的管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右边命令的输入。连续使用管道意味着第一个命令的输出会作为第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推。
注意:
1、管道命令只能处理前一个命令的标准输出,而不能处理标准错误;
2、管道命令右边命令必须能够接收标准输入。

test 01:在当前目录下找到文件名为test.txt 所有结果(编号显示)
find . -name test.txt | cat -n
test 02:用翻页的形式查看/etc下有哪些目录和文件
ls -l /etc/ | more
test 03:获取到/etc/passwd文件中所有以sshd开头的文件里的内容
cat /etc/passwd | grep ‘^sshd’
test 04:获取到install.log文件中所有以noarch结尾的文件里的内容
cat install.log | grep ‘noarch$’
test 05:显示/etc目录下所有以pa开头的文件,并统计其个数
ls -ld /etc/pa* | wc -l
test 06:统计/usr/bin目录下的文件个数
ls /usr/bin | wc -l

类别 操作符 说明
输入重定向 < 输入重定向是将命令中接收输入的途径由默认的键盘更改(重定向)为指定的文件 
输出重定向 > 将命令的执行结果重定向输出到指定的文件中,命令进行输出重定向后执行结果将不显示在屏幕上

将命令执行的结果重定向并追加到指定文件的末尾保存 
错误重定向 2> 清空指定文件的内容,并保存标准错误输出的内容到指定文件中
2>> 向指定文件中追加命令的错误输出,而不覆盖文件中的原有内容 
输出与错误组合重定向 &> 将标准输出与错误输出的内容全部重定向到指定文件

将显示的结果输出到 list.txt 文件中,若该文件以存在则予以取代!
ls /etc > list.txt
将显示的结果累加到 list.txt 文件中,该文件为累加的,旧数据保留!
ls /etc/yum.repos.d >> list.txt
将显示的数据,正确的输出到 list.txt 错误的数据输出到 list.err
ls -al 1> list.txt 2> list.err
将显示的数据,正确的输出到 list.txt 错误的数据则予以丢弃! /dev/null ,可以说成是黑洞装置。为空,即不保存。
ls -al 1> list.txt 2> /dev/null
将显示的数据,不论正确或错误均输出到 list.txt 当中!错误与正确文件输出到同一个文件中,则必须以上面的方法来写!不能写成其它格式!
ls -al 1> list.txt 2> &1
使用标准输入,在a.txt文件中写入 “hello world”

输出:echo “hello world” > a.txt
<输入

将命令的man手册页信息保存到文本文件
man ls | col -b > lshelp.txt
col命令用于过滤文本中的一些特殊控制字符
管道:将前面命令的屏幕输出结果作为后面命令的处理对象(输入)
重定向输出:将正常输出结果保存到“>”号后边指定的文件中

归档及压缩命令

gzip命令—压缩原理 2
压缩不能压缩过小的文件,越压越大
gzip 压缩可以说是最为广泛的压缩命令了,可以新建为*.gz的文件名。
语法格式:
gzip [-cdtv#] 文件名
参数:
-c 将压缩的数据输出到屏幕,可通过数据流重定向来处理
-d 解压缩的参数d
-t 可以用来检验一个压缩文件的一致性,看看文件有无错误
-v 可以显示出原文件/压缩文件的压缩比等信息
-# 压缩等级,-1 最快,-9最佳,最好的压缩默认是-6

bzip2
格式如下:bzip2 [-cdkzv#] 文件名
参数:
-c 将压缩过程中产生的数据输出到屏幕上 stuout
-d 解压缩的参数
-k 保留原文件,而不会删除源文件 keep
-z force compression 强制压缩
-v 显示出源文件、压缩文件的压缩比例等信息verbose
-# 是计算压缩比的参数,-1最快,-9最佳

bzip2 -z man.config
bzip2 -d man.config.bz2

tar命令
用途:制作归档文件、释放归档文件
格式:tar [选项]… 归档文件名 源文件或目录
tar [选项]… 归档文件名 [-C 目标目录]
常用命令选项
-c:创建 .tar 格式的包文件
-x:解开.tar格式的包文件
-v:输出详细信息
-f:表示使用归档文件,在 f 之后要立即接归档名喔!不要再加参数.
例如使用『 tar -zcvfP tfile sfile 』就是错误的写法,要写成『 tar -zcvPf tfile sfile 』才对喔!
-p:打包时保留原始文件及目录的权限
-t:表查看包内的文件列
-C:解包时指定释放的目标文件夹
-z:调用gzip程序进行压缩或解压
-j:调用bzip2程序进行压缩或解压
-J:调用xz程序进行压缩或解压

归档练习
test01:将文件a.txt归档,归档文件名为a.txt.tar
tar cf a.txt.tar a.txt
test02:将上题中的a.txt.tar进行解包
tar xf a.txt.tar
test03:再次对a.txt 进行归档,并且输出参数(提示用户是否成功)
tar cvf a.txt.tar
test04:将b.txt和a.txt同时放在归档文件中,查看归档文件中是否有a.txt和b.txt文件
tar cf a.txt.tar b.txt a.txt
tar tf a.txt.tar
test05:查看a.txt.tar中的文件有那些
tar tf a.txt.tar
归档并压缩练习
test01:将文档a.txt归档并压缩成gzip的格式
tar zcf a.txt.tar.gz
test02:将文档b.txt归档并压缩成bzip2的格式
tar jcf a.txt.tar.bz2
test03:将文档a.txt.tar.gz文件解压到指定的demo目录下
tar zxf a.txt.tar.gz -C /demo
test04:将文档b.txt.tar.bz2文件解压到当前目录下
tar jxf b.txt.tar.bz2 -C .

文本编辑器概述

文本编辑器的作用
创建或修改文本文件
维护Linux系统中的各种配置文件
Linux中最常用的文本编辑器
vi:类Unix系统中默认的文本编辑器
vim:vi编辑器的增强版本,习惯上也称为vi

vim和vi的区别
vim是中文的,vi是英文的
vim 是具备编译能力的,但是vi并不具备
可以执行一些脚本文件
vim 可以跨平台,vi不可以
windows ,linux ,mac

编辑器的工作模式
命令模式、输入模式、末行模式

Logo

更多推荐