常用命令
什么是命令?
指在Linux终端(命令行)中输入的内容就称之为命令。
一个完整的命令的标准格式:Linux通用的格式
#指令主体(空格) [选项](空格) [操作对象]
一个指令可以包含多个选项
操作对象也可以是多个
1文件处理命令
1.1 ls(list) 显示文件目录
语法: ls 选项 【-ald】
-a 显示所有文件,包括隐藏文件 (all)
-l 详细信息显示
-d 查看目录属性 (一般和l连用 可以查看详细信息)
-h 以可读性较高的形式显示 一般和l连用 ls -lh
(该界面是Fianlshell界面)
1.2 cd(change directory)切换目录
范例: cd / 切换到根目录
cd .. 回到上一级目录
路径可以是相对路径也可以是绝对路径 ~代表的是当前用户的家目录
1.2.1家目录
简介:家目录是每个用户在操作系统中的个人文件夹,用于存储用户的个人文件、配置文件和其他相关数据。通过使用波浪线,您可以快速访问和引用当前登录用户的家目录。
1.3pwd(print working directory)显示当前所在的工作目录
1.4touch 创建空文件
newfile可以是一个文件名也可以是一个包含文件路径的文件名
使用touch来同时创建多个文件 touch 文件1 文件2
注意:不能创建多层文件
1.5mkdir(make directory) 创建新目录
创建多层文件夹的时候使用的是 mkdir -p 文件夹/文件夹1
当一次性创建多层不存在的目录的时候,添加-p参数,否则会报错
一次性创建多个目录 mkdir 目录1 目录2 目录3 ….
1.6 cp(copy)复制文件或目录
语法: cp -R [源文件或目录][目的目录]
-R 复制目录
cp [被复制的文档路径] [文档被复制到的路径]
当使用cp命令进行文件夹复制操作的时候需要添加选项“-r”【-r表示递归复制】,
否则目录将被忽略
复制的时候文件可以重新命名 但是如果非必须 不建议
1.7mv(move)
语法: mv [源文件或目录][目的目录]
范例: mv file1 file
将当前目录下文件file1更名为file
范例: mv file2 dir2
将文件file2 移动到目录dir2下
1.8rm(remove) 删除文件
语法: rm -r [文件或目录]
-r 删除目录
范例: rm file3
删除文件file3
范例: rm -r dir1
删除目录dir1
f force 强制 -rf
1.9cat(concatenate and display files)显示文件内容/文件合并
语法: cat [文件名]
cat还可以对文件进行合并
1.10 more分页显示文件内容
语法: more[文件名]
(空格)或f 显示下一页
(Enter)显示下一行
Q或q退出
范例:$ more /etc/issue
1.11head 查看文件的前几行
语法: head -num [文件名]
-num 显示文件的前num行
范例:$ head -20 /etc/issue
1.12查看文件的后几行
语法: tail -num [文件名]
-num 显示文件的后num行
-f 动态显示文件内容
范例:$ tail -30 /etc/issue
1.13 wc(word count)统计文本的行数、字数、字符数
语法: wc -mwl [文件名]
-m 统计文本字符数
-w 统计空格字数
-l 统计文本行数
1.14 ln(link)产生链接文件
当链接文件 或者源文件 改变时 对应的文件或源文件也跟着改变
语法: ln -s [源文件][目标文件]
-s 创建软链接 (soft)
范例:$ ln -s /etc/issue /issue.soft
创建文件/etc/issue的软连接/issue.soft
硬连接 (hard)
$ ln /etc/issue /issue.hard
创建文件/etc/issue的硬连接/issue.hard
1.14.1软硬链接的区别
- 软链接,其实就是新建立一个文件,这个文件就是专门用来指向别的文件的(那就和windows 下的快捷方式的那个文件有很接近的意味) 。
- 硬脸接是不会建立inode的,他只是在文件原来的inode link count域再增加1而已,也因此硬链接是不可以跨越文件系统的 。
- 硬链接实际上是为文件建一个别名 ,链接文件和原文件实际上是同一个文件。 ...
- 软链接可以跨文件系统,硬链接不可以;
2文件搜索命令
2.1find查找文件或目录语法:find [搜索路径] [选择项] [搜寻关键字]
范例:$ find /etc -name init
在目录/etc中查找文件init
$ find / -size +104800
在根目录下查找大于100MB的文件
$ find / -user root
在根目录下查找所有者为root的文件
$ find /etc -ctime -1
在/etc查找24小时内被修改过属性的文件和目录
$find /etc -size +163840 -a -size -204800
在/etc查找大于80MB小于100MB的文件
$find /etc -name init -exec ls -l {} \;
在/etc下查找init文件并显示其详细信息
-type:按照文档的类型进行搜索
文档类型:“-”表示文件(在使用find的时候需要用f来替换),“d”表示文件夹
find /etc/sane.d/ -type f
搜索/etc/sane.d/目录下所有的文件
2.2 grep 在文件中搜寻字符串匹配的行并输出
语法:grep [指定字串] [源文件]
范例:grep ftp /etc/service
grep -i aaa不区分大小写aaa
grep -v aaa排除关键字aaa
grep -w aaa 完全匹配aaa关键字
3.压缩解压命令
3.1 gzip(GUN zip)
语法:gzip 选项 [文件]
压缩后文件格式: .gz
3.2gunzip(GUN unzip) 解压缩 .gz 的压缩文件
功能描述:解压缩 .gz 的压缩文件
语法:gunzip 选项 [压缩文件]
范例: $ gunzip 1.txt.gz
3.3 tar打包目录
语法:tar 选项[zcvf] [压缩文件的名字] [目录]
tar -zcvf nginx.tar.gz ./
-c 产生.tar打包文件
-v 显示详细信息
-z 打包同时压缩
-f 指定压缩后的文件名
解压缩语法 tar -zxvf [指定的压缩文件] -C [目的目录]
-x 解压.tar文件
-v 显示详细信息
-f 指定解压文件
-z 解压缩
压缩后文件格式: .tar.gz
指定文件夹 -C
tar -zxvf 压文件的名字 -C 指定的目录
3.4zip压缩文件或目录
语法:zip 选项[-r][压缩后文件名称][文件或目录]
-r 压缩目录
压缩后文件格式: .zip
3.5 unzip
功能描述:解压.zip的压缩文件
语法:unzip [压缩文件]
范例:$ unzip test.zip
3.6 bzip2
功能描述:压缩文件
语法:bzip2 选项-k
-k 产生压缩文件后保留原文件
压缩后文件格式: .bz2
3.7 bunzip2
功能描述:解压缩文件
语法:bunzip2 选项-k
-k 解压缩文件后保留原文件
4权限管理命令
4.1chmod(change the permissions mode of a file)改变文件或目录权限
4.1.1chmod -r +目录名 递归赋权限
$ chmod u+x file 给file的属主增加执行权限
$ chmod 751 file 给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限
$ chmod u=rwx,g=rx,o=x file 上例的另一种形式
$ chmod =r file 为所有用户分配读权限
$ chmod 444 file 同上例
$ chmod a-wx,a+r file 同上例
$ chmod -R u+r directory 递归地给directory目录下所有文件和子目录的属主分配读的权限
$ chmod 4755 设置用ID,给属主分配读、写和执行权限,给组和其他用户分配读、执行的权限。
引用 博客园 琼楼玉宇
5帮助命令
5.1man(manual)获得帮助信息
语法:man [命令或配置文件]
范例:$ man ls
q退出
5.2info(information)获得帮助信息
功能描述:获得帮助信息
语法:info [任何关键字]
范例:$ info ls
5.3whatis(search the whatis database for strings)获得索引的简短说明信息
语法:whatis apropos[任何关键字]
范例:$ whatis ls
$ apropos fstab 相当于 man -k
### makewhatis
建立whatis和apropos搜索使用的数据库,当使用这两个命令发生错误时,就是数据库没有建立
6rpm命令
rpm (Redhat Package Manager)
-a:查询所有套件;
-b<完成阶段><套件档>+或-t <完成阶段><套件档>+:设置包装套件的完成阶段,并指定套件档的文件名称;
-c:只列出组态配置文件,本参数需配合"-l"参数使用;
-d:只列出文本文件,本参数需配合"-l"参数使用;
-e<套件档>或--erase<套件档>:删除指定的套件;
-f<文件>+:查询拥有指定文件的套件;
-h或--hash:套件安装时列出标记;
-i:显示套件的相关信息;
-i<套件档>或--install<套件档>:安装指定的套件档;
-l:显示套件的文件列表;
-p<套件档>+:查询指定的RPM套件档;
-q:使用询问模式,当遇到任何问题时,rpm指令会先询问用户;
-R:显示套件的关联性信息;
-s:显示文件状态,本参数需配合"-l"参数使用;
-U<套件档>或--upgrade<套件档>:升级指定的套件档;
-v:显示指令执行过程;
-vv:详细显示指令执行过程,便于排错。
安装
rpm -ivh xxx.rpm # 直接安装
rpmrpm --force -ivh xxx.rpm # 忽略报错,强制安装
卸载
[root@localhost ~]# rpm -ql tree # 查询
[root@localhost ~]# rpm -e tree # 卸载
[root@localhost ~]# rpm -ql tree # 查询
列出所有安装过的包
[root@localhost ~]# rpm -qa
如何获得某个软件包的文件全名
[root@localhost ~]# rpm -q tree
rpm包中的文件安装的位置
[root@localhost ~]# rpm -ql tree
哪个软件包包含这个程序
[root@localhost ~]#rpm -qf `程序名` #返回软件包的全名
[root@localhost ~]#rpm -qif `程序名` #返回软件包的有关信息
[root@localhost ~]#rpm -qlf `程序名` #返回软件包的文件列表
[root@localhost ~]# rpm -qf `shd`
7.输出重定向
一般命令的输出都会显示在终端中,有些时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计,则这时候需要使用到的输出重定向技术。
>:覆盖输出,会覆盖掉原先的文件内容
>>:追加输出,不会覆盖原始文件内容,会在原始内容末尾继续添加
语法:#正常执行的指令 > / >> 文件的路径
注意:文件可以不存在,不存在则新建
8.ps -ef 指令(重点)
作用:主要是查看服务器的进程信息
选项含义:
-e:等价于“-A”,表示列出全部的进程
-f:显示全部的列(显示全字段)
特别篇:文件颜色的含义
Linux文件类型颜色的含义:
1、蓝色,代表目录类型;
2、白色,代表一般性文件;
3、浅蓝色,代表链接类型;
4、绿色,代表可执行文件;
5、红色,代表压缩文件;
6、黄色,代表设备文件;
7、灰色,代表其他文件;
8、红色闪烁,代表链接的文件有问题。