Linux基本命令
文章目录
1.pwd命令
pwd命令用于显示用户当前所处的工作目录。
2.cd命令
cd命令用于切换工作路径
cd -用于返回上一次的目录
cd . .回到根目录
3.ls命令
ls命令用于显示目录中的文件信息,该命令的语法格式如下:
ls [参数选项] [文件或路径]
注意:ls为LS的小写,“[ ]”里面的参数根据实际情况搭配使用。
命 令 | 说 明 |
---|---|
ls | 查看当前目录下的文件及目录 |
ls -a | 查看当前目录下所有的文件及目录(含隐藏文件及目录) |
ls -l | 以长格式查看文件的属性、大小等详细信息 |
ls -R | 显示当前目录及子目录下的文件名 |
ls -ld | 查看当前目录的属性信息 |
注意:在Linux系统中,用“.”代表当前目录,用“…”代表当前目录的父目录。
4.echo命令
echo用于在屏幕上输出信息,该操作的语法格式为:
echo [参数选项] 字符串或者变量
echo命令参数及作用:
参 数 | 作 用 |
---|---|
-n | 不换行输出内容 |
-e | 解析转义字符 |
\n | 换行 |
\r | 回车 |
\t | 制表符 |
5.目录操作类命令
(1)mkdir
mkdir命令用来创建目录,该命令的语法格式为:
mkdir [参数选项] [目录名称]
有参数选项“-p”,其作用是用来创建一大串级联目录,还有个好处是创建一个已经存在的目录时,不会报错。
(2)rmdir
rmdir命令用来删除 “空”目录,该命令的语法格式为:
rmdir [参数选项] [目录名称]
有参数选项“-p”,其作用是用来删除一大串级联 “空” 目录,但其有局限性,所以通常使用rm命令。
(3)rm
rm命令用来删除文件或目录,该命令的语法格式为:
rm [参数选项] [目录名称]
rm命令只能删除文件,当想要删除目录时,提示不能删除,只有加入“-r”参数才能删除目录,同时会有很多提示需要输入“y”或者“n”,此时可以加入“-f”参数强制删除。
6.文件操作类命令
(1) touch
touch命令用来创建空白文件,如果该文件存在,就表示修改当前文件时间,该命令的语法格式为:
touch [参数选项] [目录名称]
(2)cp
cp命令用来复制文件或者目录,该命令的语法格式为:
cp [参数选项] 源文件 目标文件
在复制操作中具体分为以下三种情况:
- 如果目标文件是目录,就把源文件复制到该目录下。
- 如果目标文件不存在,就执行正常的复制操作。
- 如果目标文件是普通文件,就会询问是否覆盖。
在复制文件或者目录时,如果要复制一个目录,必须加入“-r”参数进行递归复制,否则会出错;如果在复制时要保留原始文件或者目录的原始属性,同时保留软链接属性,需要加入“-a”参数(类似-dpR组合);如果在复制时要保留原始文件或者目录的原始属性,需要加入“-p”参数。
(3)mv
mv命令用来重命名或者移动文件或目录,如果在同目录中对文件或者目录进行mv操作,就相当于重命名,该命令的语法格式为:
mv [参数选项] 源文件 [目标文件|目标路径]
(4)dd
dd命令用来按照指定大小和个数的数据块来复制文件或转换文件,它能够按照指定大小和个数的数据块来复制文件的内容,该命令的语法格式为:
dd [参数选项]
dd命令参数及作用:
参 数 | 作 用 |
---|---|
if | 输入文件名,默认为标准输入,即指定源文件<if=input file> |
of | 输出文件名,默认为标准输出,即指定目的文件<of=output file> |
count | 仅读取指定的区块数 |
bs | 设置读入/输入的块大小为bs个字节 |
如:“dd if=/dev/zero of=file.txt count=10 bs=10M”命令即从/dev/zero设备文件中取出10个大小为10M的数据块(100M),然后保存为file.txt文件。
(5)ln
ln命令用来为文件创建链接,链接类型分为硬链接和符号链接(软链接)两种,默认链接类型为硬链接。如果要创键符号链接,必须使用“-s”参数选项,在做符号链接时一定要使用绝对地址(绝对地址是以“/”开头的地址)。该命令的语法格式为:
ln [参数选项] 源文件或目录 目标文件或目录
7、文件查看类命令
(1)cat
cat命令用来查看一个文件的内容并显示在屏幕上,一般用于查看内容较少的文件,参数“-n”显示行号,该命令的语法格式为:
cat [参数选项] [文件名]
(2)zcat
zcat命令用于不解压缩文件,就能查看压缩文件包中的内容。
(3)more/less
more/less命令用于查看一个文件的内容,按空格键看下一屏,看完所有内容后就会退出,如果想要提前退出,只需按“q”键即可。该命令的语法格式为:
more/less [参数选项] [文件名]
(4)head/tail
head/tail命令用来查看文件的前/后十行,如果加入“-n”参数,则显示文件前/后n行,该命令的语法格式为:
head/tail [参数选项] [文件名]
tail命令后加参数“-f”则动态显示文件最后十行,适用于查看实时更新的日志。
(5)file
file命令用来查看文件类型,该命令的语法格式为:
file [参数选项] [文件名]
8、文件压缩和归档类命令
(1)gzip/gunzip
gzip/gunzip命令用来压缩/解压缩文件,文件压缩类命令还有bzip2、bunzip等,该命令的语法格式为:
gzip/gunzip [参数选项] 文件
gizp程序用来压缩文件,gunzip程序用来还原gzip压缩的文件,zcat程序用来显示gzip程序压缩的文件。使用“-r”参数选项,gzip/gunzip会递归地压缩/解压缩目录层次结构中的文件,同时压缩后会删除原始文件,压缩过的文件后缀为“.gz”。
(2)taz
tar命令用来归档/解归档文件,常结合压缩一起用,后缀一般为“.tar.gz”,该命令操作的语法格式为:
归档语法:
tar [参数选项] 归档文件名 需归档的原文件或目录
解归档语法:
tar [参数选项] 归档文件名 [-C 目标目录]
tar命令常用参数及作用:
参 数 | 作 用 |
---|---|
- c | 小写c,创建“.tar”格式的包文件 |
- C | 大写C,解包时指定的目标目录 |
- f | 指定文档名 |
- r | 追加文件至“.tar”格式文件结尾 |
- t | 列表查看包内的文件 |
- v | 输出详细信息 |
- x | 解开“.tar”格式的包文件 |
- z | 调用gzip程序进行压缩或解压缩 |
注意:
在参数选择时,c、r、x、t参数仅能存在一个。在“-f”参数后要立即接文档名,不能再加参数。
9、文件搜索和查找类命令
(1)grep
grep命令用来查找普通文件中包含指定字符串的行,该命令操作的语法格式为:
grep [参数选项] 查找字符串 普通文件
参数选项:
“-c”统计包含要查找的字符串的行的行数
grep -c 查找字符串 普通文件
“-n”输出包含要查找的字符串的行所在的行号
grep -n 查找字符串 普通文件
“-vn”输出不包含所要查找的字符串的行
grep -vn 查找字符串 普通文件
"^"查找以xxx开头的行
grep -n ^xxx 普通文件
"$"查找以xxx结尾的行
grep -n xxx$ 普通文件
如果查找的字符串中含有空格,可用单引号或者双引号括起来。
(2)find
find命令用来查看系统中的文件或目录,该操作的语法格式为:
find 路径 匹配表达式
find命令常用匹配表达式及作用:
匹配表达式 | 作 用 |
---|---|
-name filename | 查找指定名称的文件 |
-user username | 查找指定用户名的文件 |
-group groupname | 查找指定用户组的文件 |
-type b/c/d/f/l | 查找指定类型的文件,如b(块设备)、c(字符设备)、d(目录)、f(普通文件)、l(符号链接) |
-perm mode | 查找指定权限的文件 |
-exec command {} ; | 对匹配条件的文件执行command命令 |
注意:对匹配条件的文件执行command命令时,command是基础命令,“{}”代表的是前面匹配条件找到的文件,“;”是固定结尾格式写法。
例如:
查找名字包含T的文件:
find -name “*T*”
查找名字以T为开头的文件:
find -name “T*”
查找名字以T为结尾的文件:
find -name “T*”
搭配“xargs”命令来使用:
参数“-t”指定目标目录,参数“-i”指定将找到的结果放在{}中。
10、输入/输出重定向和管道命令符的使用
(1)输入/输出重定向
Linux系统下使用,标准输出stdin(0,默认是键盘),标准输出stdout(1,默认是终端屏幕),标准错误输出stderr(2,默认是终端屏幕)。
输入/输出重定向符号及作用:
符 号 | 作 用 |
---|---|
command < file | 将file文件作为command命令的标准输入 |
command >file | 将command命令的结果输出到file文件中,若有则覆盖,若没有则新建 |
command >> file | 将command命令的结果输出到file文件中,若有则追加,若没有则新建 |
command 2> file | 将command命令结果的错误信息输出到file文件中,若有则覆盖,若没有则新建 |
command &> file | 将command命令结果的所有信息(正确和错误)输出到file文件中,若有则覆盖,若没有则新建 |
(2)管道命令符
管道命令符“|”的作用是将前一个命令的标准输出作为后一个命令的标准输出,格式为“命令A | 命令B | 命令C”。
11、系统信息和进程管理类命令
(1)uname
uname命令用来查看系统内核与版本等信息,格式为:
uname [参数选项]
参数“-a”用来完整地查看当前系统的内核名称、主机名、内核发行版号、节点名、硬件平台、处理器类型及操作系统名等信息。
(2)whereis
whereis命令用来寻找命令的可执行文件所在的位置,格式为:
whereis [参数选项] 命令名称
(3)history
history命令用来显示历史执行过的命令,格式为:
history [参数选项]
在使用history命令时,如果使用“-c”参数,就会清空所有的命令历史记录。还可以使用“!编码数字”的方式来重复执行某一次的命令。
(4)date
date命令用来显示或设定系统的日期和时间,该语法格式为:
date [参数选项] [+定义格式]
date命令日期参数及作用:
参 数 | 作 用 |
---|---|
%Y | 年(如 2018) |
%m | 月(如 04) |
%d | 日(如 05) |
%H | 时(00 . .23) |
%M | 分(00 . .59) |
%S | 秒(00 . .60) |
%F | 日期全格式(等同于%Y-%m-%d) |
参数“-s”,设置时间。由于同步时间是每隔一段时间进行的,在执行“date -s”后如果马上重启计算机,修改的时间就可能没有写入CMOS。“hwclock -w”强制把系统时间写入CMOS,“hwclock -s”强制把CMOS时间写入系统时间。
(5)top
top命令用来动态地监控LInux的系统状况,如CPU、内存的使用,其格式为:
top
输入q退出。
(6)ps
ps命令用来查看系统进程,其格式为:
ps [参数]
参数“-e”显示所有进程,参数“-f”全格式。
(7)ss
ss命令用来导出socket进程的统计数据,它会显示与netstat命令类似的信息,但能显示比其他工具更详细的TCP状态信息,其格式为:
ss [参数]
参数“-tunlp”会显示所有端口和所有对应的程序。
(8)who
who命令用来查看并显示出所有正在登录本机的用户的名称及其正在开启的终端信息,其格式为:
who [参数]
(9)stat
stat命令用来查看文件的存储信息和时间等信息,主要是文件的Access(文件的读取时间)、Modify(文件内容的修改时间)、Change(文件权限或属性的更改时间)三种状态时间,其格式为:
stat [参数] 文件名
除了通过stat命令来查看文件的Access、Modify、Change等属性,也可以通过ls命令查看,具体如下:
列出文件的Ctime(最后修改时间):
ls -lc filename
列出文件的Atime(最后存取时间):
ls -lu filename
列出文件的Mtime(最后修改时间):
ls -l filename
还可以通过touch命令来修改Atime、Mtime与Ctime,为保证系统安全性,Ctime无法进行修改,他会根据文件权限或属性等的改变而更新时间。