linux常用命令详解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux常用命令详解相关的知识,希望对你有一定的参考价值。
一、命令的分类
用于实现某一类功能的指令或程序
命令本质就是程序
命令的执行必须依赖于shell命令解释器程序(例如:/bin/bash)
shell解释器,是Linux系统中运行的一种特殊程序,就是作为翻译官,横跨在用户和内核之间,将用户输入的命令解释为内核能识别的语言
只要是用户登录系统后,他都自带的在/bin/bash当中,也就是它可以使用shell这个程序来进行登录到系统。
shell也是一种进程。
Linux里支持很多种shell,但默认的shell是/bin/bash:
cat /etc/shells 查看linux系统所支持的shell程序
2.Linux命令的分类
内部命令:属于shell解释器的一部分
内部命令就是伴随系统内核自动就携带的命令 。
外部命令:独立于shell解释器之外的程序
外部命令,是需要靠第三方的文件和命令文件所支持,只有你有这个命令文件你才能使用这个命令,这就是外部的
type 命令 判断用户输入的是外部命令还是内部命令
注:shell内嵌代表内部命令,文件路径代表外部命令 。
二、命令的格式
1.Linux命令的通用格式
命令字 [选项] [参数]
说明:
命令字,就是命令
选项,选项的意思就是增加一些功能,它的作用就是用于调节命令的具体功能
参数,参数就是你要执行的对象,你要对哪个目录哪个文件进行操作,这个对象一定要指明
注:参数最好使用绝对路径。
所以说,这三个组成,命令,我要执行干什么,选项,我要在干这个的时候执行哪些功能,有了功能,我要对谁执行,这三个部分一定有。
选项里面有两种格式:
“-”引导短格式选项,例如“ls -a”
后面基本是跟一个单个字母 -a -b -c -d = -abcd
“--”引导长格式选项,例如
“ls --help”后面跟的是一个单词
三、命令操作技巧
1.Tab键:按一次,自动补齐;按两次Tab键,系统将输出可用的名称列表
2.反斜杠“”:强制换行 , 用于命令过长的情况
3.ctrl+U:快速删除当前光标处之前的所有字符
4.ctrl+K:快速删除从当前光标处到行尾的所有字符
5.ctrl+L:快速清空当前屏幕中的显示内容
6.ctrl+C:取消当前命令行的编辑,终止
7.ctrl+a:跳到行首
8.ctrl+e:跳到行尾
四、获取命令帮助
尽量不要去试图记住所有的命令的选项,只要记住常见的命令就可以了。
1.内部命令 help
查看各shell内部命令 的帮助信息
2.命令的“--help”选项
适用于大多数外部命令
通常用于查看命令的用法
将命令的所有选项都列表出来,并解释其功能作用
3.使用man命令阅读手册页
出现一个文本信息模式,在这个文本信息模式中,翻阅去查看
使用“上,下”方向键滚动文本
使用PageUp和PagedDown键翻页
按Q或q键退出阅读环境
按“/”键查找内容;
n往下找,N往上找
满命令帮助信息的结构和意义:
结构名称 | 意义 |
---|---|
NAME | 命令的名称 |
SYNOPSIS | 参数的大致使用方法 |
DESCRIPTION | 介绍说明 |
EXAMPLES | 演示 |
OVERVIEW | 概述 |
DEFAULTS | 默认的功能 |
OPTIONS | 具体的可用选项(带介绍) |
ENVIRONMENT | 环境变量 |
FILES | 用到的文件 |
SEE ALSO | 相关的资料 |
HISTORY | 维护历史与联系方式 |
4、whatis ---> 只是告诉命令是干什么的
是man的一个摘要
格式:whatis 命令
当你看到一个不会的命令,可以使用此命令查看是干什么的。
5、查询的命令:
ls:列表(list)显示目录中内容:
-a:显示所有的子目录和文件的信息,包括名称以点号“.”开头的隐藏目录和隐藏文件
-A:与-a作用类似,但有两个特殊隐藏目录不会显示,“.”和“..”
-l:以长格式显示文件和目录的列表
例子:ls -l /etc
-d:显示目录本身的属性
例子:ls -ld /zz/ 以长格式显示目录本身的属性
-h:显示出详细信息,如大小,结合-l一起使用
例子:ls -lh
-R:以递归方式将当前目录中的子目录全部展开
--color 默认情况就有了这条选项
注:
Linux中的一切事物都是文件。
在所有的linux系统当中,组成文件的类型,不像windows当中的那么直观,在windows中,这个是文件夹,这个是文件,并且我们都可以通过它的后缀名知道它是什么文件类型。但是linux当中就不一样,linux当中,凭借颜色可以识别它到底是哪种文件类型:
蓝色 是目录(文件夹)
白色 是普通文本文件
绿色 是可执行文件(脚本文件)
××× 是设备文件
红色 是压缩性文件 (压缩包)
浅蓝色 是软链接文件(快捷方式)
红色闪烁:表示链接的文件有问题
灰色 是其他文件
6、创建别名——alias
作用:
1、通过给危险命令加一些保护参数,防止人为误操作
2、把很多复杂的字符串或命令编程一个简单的字符串或命令。
例子:
alias mysql="echo 这条命令无效"
别名对应的命令:
alias #只输入一个“alias"是查看已设置的别名
alias 别名 #创建一个新别名
unalias 别名 #取消已创建的别名
那么有的时候,这种别名,你操作起来还是比较简便的
那么别名这种形式,比如说这个命令是一个组合,ls -alh
你可以通过alias把它定义,说白了就是给它取个小名或者称号,
Alias myls=‘ls -alh‘
注意:单引号不要忘了 ,它其实就是创建一个快捷键
然后我们输入myls,就是相当于执行了“ls -alh”这条命令。
ls 和 /bin/ls 就是直接使用ls命令,不是使用ls --color:auto
注:“”是转义符号,将有特殊含义的字符串转换为普通字符串。
以上都是临时的
永久设置别名:放置在系统的环境变量文件中
一般放置在以下两个地方:
/etc/profile 全局生效,即对所有人生效
~/.bashrc 当前用户生效,只对当前登录的用户生效
7、du——统计目录
作用:统计指定目录(或文件)所占用磁盘空间的大小
常用选项有:
-a,统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录,实际上统计里面空间文件 的大小,罗列的非常详细
-h,以友好形式显现出目录或文件的大小(K、M),默认的大小单位为字节(B)
-s,只统计每个参数所占用空间总的大小,而不是统计每个子目录、文件的大小
注意了,a和s不能同用,你要么使用du -ah,要么使用du -sh
如果你用了,系统就会报错
8、创建目录和文件——mkdir, touch,
1.创建目录(文件夹) mkdir
格式:mkdir [选项] 目录位置及名称
-p 一次性创建嵌套的多层目录
9、创建文本文件——touch
格式:touch 文本文件名 (不加任何选项)
文件名之间以空格分隔,可以一次性创建多个文件。
(1)当文件不存在,则创建新文件
(2)当目标文件已存在时,将更新该文件的时间标记
10、复制拷贝文件或目录——cp命令 (copy)
格式:cp [选项] 源文件或目录… 目标文件或目录
-f:覆盖目标同名文件或目录时不进行提醒,直接强制复制
-i:覆盖目标同名文件或目录时提醒用户确认
-p:复制时保持源文件的权限,属主及时间标记等属性不变
-r:复制目录时必须使用此选项,表示递归复制所用文件及子目录
通常后面加‘v’,显示过程(cp -rv)
11、删除文件或目录 ——rm (remove)
格式:rm [选项] 要删除的文件名称或目录名称
-f:删除文件或目录时不进行提醒,而直接强制删除
-i:删除文件或目录时提醒用户确认
-r:删除目录时必须使用此选项,表示递归删除整个目录树(应该谨慎使用)
谨慎操作:rm -rf *
单独的一个,代表所有
a代表的是以a开头的所有文件或目录
?只代表一个数或者字母
12、移动文件或目录——mv(move) 重命名 (剪切)
作用:(1)将指定的文件或目录转移位置 (不同目录下,剪切/移动)
(2)如果目标位置与源位置相同,则相当于执行重命名操作 (同一目录下,重命名)
格式:mv 源文件或目录 目标文件或目录
使用绝对路径。
13、查找用户所执行的命令文件存放的目录——which命令
查找可执行程序的位置,只去$PATH结果中找
搜索范围由环境变量PATH决定
$PATH系统环境变量
echo $PATH(查看用户环境变量的命令)
PATH的值—系统中所有可执行命令的位置
格式 which 命令或者程序名
默认当找到第一个目标后不再继续查找
which -a 命令或者程序名 如果希望在所有搜索路径中查找 一直找
14、查找文件或目录 find命令
find [目录] [命令] [名称]
(1)按名称查找
find 源目录 -name 关键字
a(a开头),b; a(结尾),b; a??
??A(一个“?”代表一个字符)
(2)按文件大小查找 find 源目录 -size
-30k(小于30k);+30k(大于30k);30k(等于30k);MB,GB(注意大小写,B可省略),加“”
(3)按文件属主查找 find 源目录 -user
按帐户/用户名查找
(4)按uid查找 find 源目录 -uid
查找当普通帐户被删除之后,该用户所创建的文件
查看uid 的命令是:id 用户名
例子:find /bin -uid 1000
查找/bin目录下UID为1000的文件
(5)按文件类型查找 find 源目录 -type
l(软链接,快捷方式),f(普通文件),d(目录),b(硬件设备文件),c(字符终端,字符块设备)
例子:find /bin -type l/f/d/b/c
查找/bin目录下的文件类型为l/f/d/b/c的文件或目录
linux系统中一切事物都是文件。
(6)用find进行多条件查找:
-a 表示 而且(and) ; -o 表示 或者(or)
例子:find /etc -size +40k -a -type f
查找/etc大于40k的并且文件类型为普通文件的文件。
find /etc -size +20K -o -size -10k
查找/etc大于20k文件或者小于10k文件。
find /etc -size +100k -a -size -150k
查找/etc中的100k到150k的文件
15、对文件内容进行查看:
cat:直接一次性查看所有内容。
tac:从最后一行开始倒着显示文档内容
more:从文件开头开始显示内容,通过按下空格键查看下一屏内容,不允许向上翻。按回车键可以一行一行向下翻。看到最后一屏自动退出查看。
less: 有more就有less,less不与more相反且更为强大,内容并不从尾部显示到头部,与more显示顺序相同,它集成了more的空格键与回程键功能,同时还有以下功能:
1.支持上下方向键向上向下翻转一行内容,j、k键分别实现上下翻功能。
2.还支持page down 与 page up实现按屏翻。Ctrl+b向下按屏翻,Ctrl + f向上按屏翻(助记:bottom下,front上)。
3.按下"g"实现回到首行功能,按下"G"实现到最后一行功能。
4.less支持搜索关键字,按下 "/" 后输入要查找的关键字,文中匹配字符串将高亮显示。且按下字母n键,可以一个一个向后查看这些关键字。向前查用N键。
除了" /" ,用"?"键加上要查找的字符串也是大体相同,只是n与N键对字符串的跳动方向相反。
注意看到最后一屏消息并不会结束less命令,按下q退出查看。
head:默认查看内容前10行,加上参数如 head -2 1.txt 查看前两行。
tail:默认查看后十行,加上参数如 tail -2 1.txt查看后两行。加上参数 -f 可以动态查看末尾内容(相当于看到的文件始终是最新的)。退出用Ctrl +c键.
16、grep:检索和过滤文件内容
格式:
grep 选项 “查找条件 ” 目标文件
-i:查找时忽略大小写
-v:反转查找,输出与条件不相符的行
“^…”:表示以…开头
“…$”:表示以…结尾
“^$”:表示空行
17、gzip和gunzip 以gzip格式压缩和解压缩
格式:
gzip -9 文件名 #-9是压缩级别,9为最高级别
gunzip 压缩文件名 等同于 gzip -d 压缩文件名
18、bzip2,bunzip2 以bzip2格式压缩和解压缩
格式:
bzip2 -9 文件名 #-9是压缩级别,9为最高级别
bunzip2 压缩文件名 等同于 bzip2 -d 压缩文件名
19、zip和unzip 以zip格式压缩和解压缩
格式:
zip -9 文件名
unzip 压缩文件名
20、tar 用于对文件进行打包压缩或解压。
格式:
tar 选项 打包的文件名 源文件或目录
常用选项:
-c :创建压缩文件
-t :查看压缩包内有哪些文件
-x :解开压缩文件
-z :以 gzip 的格式进行压缩或解压缩:此時压缩文件名最好为 .tar.gz
-j : 以bzip2 的格式进行压缩或解压缩:此時压缩文件名最好为 .tar.bz2
-J :以 xz的格式进行压缩或解压缩:此時压缩文件吗最好为 *.tar.xz
-v :显示压缩、解压过程
-f :目标文件名(-f应放在参数末位,立即接文档名)
-C :解压到指定目录
注:特別留意的是, -c, -t, -x 不可同时出現在一串指令列中。
特別留意, -z, -j, -J 不可以同时出現在一串指令列中
打包压缩:
tar -czvf 压缩后的文件名.tar.gz 源文件或目录
tar -cjvf 压缩后的文件名.tar.bz2 源文件或目录
查看压缩文件中的内容:
tar -tzvf 压缩后的文件名.tar.gz
tar -tjvf 压缩后的文件名.tar.bz2
解压压缩文件:
tar -xvf 压缩后的文件名.tar.gz -C 目的目录
以上是关于linux常用命令详解的主要内容,如果未能解决你的问题,请参考以下文章