当前位置: 首页 > news >正文

Linux常用基本命令详解(一)

1.帮助命令

1.1.man命令

man[命令或配置文件] (功能描述:获得帮助信息)
例如:查看ls命令的帮助信息:man ls
在这里插入图片描述

1.2.help命令

一部分基础功能的系统命令是直接内嵌在 shell 中的,系统加载启动之后会随着 shell 一起加载,常驻系统内存中。这部分命令被称为“内置(built-in)命令”;相应的其它命令 被称为“外部命令”。我们可以通过{type 命令}查看命令的类型。
help 命令(功能描述:获得 shell 内置命令的帮助信息)
例如:查看 cd 命令的帮助信息
在这里插入图片描述
命令 --help(功能描述:来查询外部命令的帮助文档)
例如:
在这里插入图片描述

1.3.常用快捷键

在这里插入图片描述

2.文件目录类命令

2.1.目录操作命令

pwd指令
●基本语法:pwd (功能描述:显示当前工作目录的绝对路径)

cd指令
●基本语法
cd [参数] (功能描述:切换到指定目录)(参数指的是相对路径和绝对路径)
cd~或者cd:回到自己的家目录
cd…:回到当前目录的.上一级目录.

  • 绝对路径:从根目录为起点到某一个目录的路径。
  • 相对路径:从一个目录为起点到另外一个的目录的路径。

举例:
比如你的C盘有一个文件夹叫FIle,文件下有两个文件file one 和 file two
表示出file two的方法有两种
第一种(绝对路径表示法):C:\FIle\file two
第二种(相对路径表示法):FIle two(file one 和file two 文件都在c盘的FIle文件下,它们的路径前面C:\FIle都是一样的,就不用表示出来了)
如果不在同一个目录的话,例如上面的两个文件的绝对路径为:
file one 的位置为:C:\FIle\path one\file one
file tow 的位置为:C:\FIle\path two\file two
这是如果在file one位置下file two相对路径的表示:…/path two/file two(其中**…表示回退到上一层),此外Linux系统是/,windows系统是**。

ls指令
●基本语法
ls 【选项】 [目录或是文件]
●常用选项
-a :显示当前目录所有的文件和目录,包括隐藏的。
-l :以列表的方式显示信息

mkdir指令
mkdir指令用于创建目录(make directory)
●基本语法: mkdir [选项] 要创建的目 录
●常用选项: -p :创建多级目录

rmdir指令
rmdir指令删除空目录
●基本语法: rmdir [选项] 要删除的空目录
*注意:*rmdir删除的是空目录,如果目录下有内容时无法删除的。如果需要删除非空目录,可以使用
rm-rf 要删除的目录

2.2.文件操作命令

touch指令
touch指令 创建空文件
●基本语法
touch 文件名称

cp指令
cp指令拷贝文件到指定目录
●基本语法
cp [选项] source(源文件) dest(目标文件/目录的路径)
在这里插入图片描述
●常用选项:-r : 递归复制整个文件夹

rm指令
rm 指令移除[删除] 文件或目录
●基本语法: rm [选项] 要删除的文件或目录
●常用选项
-r :递归删除整个文件夹
-f :强制执行删除操作,而不提示用于进行确认
-v:显示指令的详细执行过程
rm-rf:直接强制删除整个文件夹,文件夹可以非空。
rm -f ./:删除当前目录下的所有内容(**.**表示当前目录。“”表示所有目录)

** mv指令 **
mv 移动文件与目录或重命名
●基本语法
mv oldNameFile newNameFile (功能描述:当前目录下重命名,在另外目录下移动并重命名)
mv /temp/movefile /targetFolder (目标目录) (功能描述:移动文件)

cat 指令(小文件)
cat 查看文件内容,是以只读的方式打开。
●基本语法: cat [选项] 要查看的文件
●常用选项
-n :显示行号

more指令
more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more
指令中内置了若干快捷键,查看大文件比较方便。
●基本语法: more 要查看的文件
●操作说明
在这里插入图片描述
less 指令
less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。less 指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
●基本语法: less 要查看的文件
快捷键:
在这里插入图片描述

2.3.其他命令

echo指令
echo:输出内容到控制台
基本语法:echo [选项] 输出内容
选项:
在这里插入图片描述
例如:
在这里插入图片描述
>指令和>>指令
介绍:
输出重定向(>指令):会将原来的文件的内容覆盖
追加(>>指令):不会覆盖原来文件的内容,而是追加到文件的尾部。
应用:
(I) ls-I >文件 (功能描述:列表的内容写入指定文件(覆盖写),如果文件不存在,就创建该文件 )。
(2) ls-al >>文件 (功能描述:列表的内容追加到文件的末尾) 。
(3) cat 文件1>文件2 (功能描述:将文件1的内容覆盖到文件2)。
(4) echo “内容">>文件(功能描述:将在控制台的内容追加到指定文件中)。

head指令和tail指令
head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10 行内容
●基本语法
head 文件 (功能描述: 查看文件头10行内容)
head -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数)

tail用于输出文件中尾部的内容,默认情况下tail 指令显示文件的后10 行内容。
●基本语法
1)tail文件 (功能描述:查看文件后10行内容)
2)tail -n 5 文件:(功能描述:查看文件后5行内容,5可以是任意行数)
3)tail -f 文件:(功能描述:实时追踪该文档的最新追加的内容,监视文件变化。如果覆盖文件会报错。Ctrl+s:暂停监视;Ctrl+q:继续监视,暂停的内容也会显示,Ctrl+c:退出监视。)

history指令
查看已经执行过历史命令,也可以执行历史指令
history n(数字):显示刚刚输出过的n条指令。
history -c:清空所有输入过的指令。

2.4.In软链接

命令名称: In .
命令英文原意: link
命令所在路径: /bin/ln
执行权限:所有用户
语法: In -s [原文件] [目标文件]
-s创建软链接
功能描述:生成链接文件
注意:当我们使用pwd指令查看目录时,仍然看到的是软链接所在目录。

范例:
$ In -s /etc/issue /tmp/issue.soft
创建文件/etc/issue的软链接/tmp/issue .soft
$ In /etc/issue /tmp/issue. hard
创建文件/etc/issue的硬链接/tmp/issue .hard

软链接也叫符号链接,类似于windows里的快捷方式,主要存放了链接其他文件的路径。给文件创建一个快速的访问路径,它依赖于原文件,当原文件出现问题后,该链接不可用。
说明白点就是:文件A和文件B的inode号码不一样,但是文件A的内容是文件B的路径。
读取文件A时自动将访问导向B。无论打开哪个文件,读取的都是B。文件A就称为文件B的软连接。
模型图类似这样:
软链接模型图
硬链接一般情况下,文件名和inode编号是 “一一对应”的关系。但是,在linux系统中,允许多个文件名,对应一个inode编号。这种多个文件名对应同一个Inode的情况,称之为硬链接。
模型图类似这样:
硬链接模型图
避免误删。多个硬链接指向的同一个文件,只有在所有链接都被删除后,文件才会被删除。

硬链接和软链接的特征:
在这里插入图片描述
在这里插入图片描述

3.时间日期类命令

date指令-显示当前日期
●基本语法

  • date (功能描述:显示当前时间)
  • date +%Y ( 功能描述:显示当前年份)
  • date +%m (功能描述:显示当前月份)
  • date +%d (功能描述:显示当前是哪一天)
  • date +%s (功能描述:显示时间戳)
  • date “+%Y-%m- %d %H:%M:%S” (功能描述:显示年月日时分秒)
  • date -d ’ n days ago’(功能描述:显示前n天时间)
  • date -d ‘-n days ago’(功能描述:显示后n时间)

date指令-设置系统时间:date -s 字符串时间

cal指令:查看日历指令
基本语法:cal [选项] :(功能描述:不加选项,显示本月日历)
在这里插入图片描述

4.用户权限类命令

4.1.用户管理命令

useradd添加新用户
基本语法:
useradd 用户名 (功能描述:添加新用户)。
useradd -g 组名 用户名 (功能描述:添加新用户到某个组)。
当创建用户 成功后,会自动的创建和用户同名的家目录,可以使用useradd -d 指定目录 新的用户名 给新创建的用户指定家目录。
passwd 用户名 给新用户设置密码
id 用户名 查看用户是否存在及所属信息
cat /etc/passwd 查看创建了哪些用户
在这里插入图片描述在操作Linux中,如果当前用户的权限不够,可以通过su-指令,切换到高权限用户,比如root
基本语法: su - 切换用户名,
注意:1)从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。
2)当需要返回到原来用户时,使用exit指令
指令 whoami显示当前登录用户
who am i显示最原始的登录用户
在这里插入图片描述
userdel删除用户
基本语法:userdel 用户名(删除用户,但是会保留主目录)
userdel -r 用户名 (删除用户以及用户主目录)
注意:在删除用户时,我们一般不会将主目录删除。

sudo设置普通用户具有root权限
修改配置文件:vim /etc/sudoers,添加:用户名 ALL=(ALL) ALL(或者NOPASSWD:ALL,这种配置使用sudo命令不用输密码)
在这里插入图片描述
修改完毕,现在可以用对应帐号登录,然后用命令sudo,即可获得root权限进行操作。
在这里插入图片描述

4.2.用户组管理命令

Linux 系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
Linux 的用户需要至少要属于一个组,一般在创建用户的同时会创建与它同名的用户组。系统可以对一个用户组中的所有用户进行集中管理。不同Linux系统对用户组的规定有所不同。
增加组:groupadd 组名
增加用户时直接加上组:useradd -g 用户组 用户名
删除组:groupdel 组名
修改用户组:usermod -g 用户组 用户名

4.3.文件权限类命令

文件属性
Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。在Linux中我们可以使用11或者ls -l侖令来显示一个文件的属性以及文件所属的用户和组。
在这里插入图片描述

1.从左到右的10个字符表示,如下图所示
文件属性
如果没有权限,就会出现减号[-]而已。从左至右用0-9这些数字来表示:
(1) 0首位表示类型
在Linux中第一个字符代表这个文件是目录、文件或链接文件等等
-代表文件
d代表目录
I链接文档(link file);
(2)第1-3位确定属主(该文件的所有者)拥有该文件的权限。–User
(3)第4-6位确定属组(所有者的同组用户)拥有该文件的权限。–Group
(4)第7-9位确定其他用户拥有该文件的权限 。–Other
2. rwx作用文件和目录的不同解释
(1)作用到文件:
[r ]代表可读(read):可以读取,查看
[w ]代表可写(write):可以修改,但是不代表可以删除该文件,删除一 个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件。
[x ]代表可执行(execute):可以被系统执行。
(2)作用到目录:
[r ]代表可读(read):可以读取,Is查看 目录内容
[w ]代表可写(write):可以修改,目录内创建+删除+重命名目录
[x ]代表可执行(execute):可以进入该目录
文件基本属性介绍
(1)如果查看到是文件:链接数指的是硬链接个数。
(2)如果查看的是文件夹:链接数指的是子文件夹个数。

chmod改变权限
基本语法
第一种方式变更权限
chmod [{u/g/o/a} {+/-/+} {rwx}] 文件或目录
第二种方式变更权限
chmod [mode =421] 文件或目录
其中:u:所有者 g:所有组 o:其他人 a:所有人(u、g、o的总和)
r=4 w=2 x=1 wx=1+2=3 rx=5 rw=6 rwx= 4+2+1=7(这个其实是rwx的三位二进制对应转化成的十进制数)
案例实操:
在这里插入图片描述
在这里插入图片描述在这里插入图片描述修改整个文件夹里面的所有文件的所有者、所属组、其他用户都具有可读可写可执行权限
chmod -R 777 指定目录

chown改变文件或者目录所有者
chown [选项] 最终用户 文件或者目录
选项:-R:递归操作

chgrp改变文件或者目录的所属组
chgrp 最终用户组 文件或者目录

5.搜查查找类命令

find查找文件或者目录
find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端。
find [搜索范围] [选项]
选项说明:
在这里插入图片描述
例如:根据名称查找/home目录下的hello.txt文件:find /home -name hello.txt
查找整个linux系统下大于20m的文件:find / -size +20M

locate指令快速定位文件路径
locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻。
locate 搜索文件
*特别说明:*由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate 数据库。

grep 指令和"|"管道符号
管道符“|”表示将前一个命令的处理结果输出传递给后面的命令处理。
grep [选项] 查找内容 源文件
●常用选项:
-n 显示匹配行及行号
-i 忽略字母大小写
例如:请在hello.txt 文件中,查找“hello”所在行,并且显示行号
在这里插入图片描述

6.压缩解压类命令

gzip/gunzip 指令
gzip 文件 (功能描述:压缩文件,只能将文件压缩为*.gz文件)
gunzip 文件.gz (功能描述: 解压缩文件命令)。
注意:
(1)只能压缩文件不能压缩目录
(2)不保留原来的文件
(3)同时多个文件会产生多个压缩包

zip/unzip 指令
zip用于压缩文件,unzip用于解压的,这个在项目打包发布中很有用的
zip [选项] XXX.zip 将要压缩的内容(功能描述:压缩文件和目录的命令)
unzip [选项] XXX.zip (功能描述: 解压缩文件)
zip常用选项
-r:递归压缩,即压缩目录
unzip的常用选项
-d<目录> :指定解压后文件的存放目录
注意:zip压缩命令在window/linux都通用,可以压缩目录且保留源文件。。
样式

tar打包指令
tar [选项] XXX.tar.gz 将要打包进去的内容 (功能描述:打包目录,压缩后的文件格式.tar.gz)。
选项说明:
tar选项说明
一般形式:
tar -czvf xxx.tar.gz source_file (tar -czvf 包名.tar.gz 源文件) #以tar.gz方式打包并gz方式压缩
tar -xzvf xxx.tar.gz -C path (tar -xzvf xxx.tar.gz -C 目标路径) #解压缩包
注意:tar本身并不对文件进行压缩,使用tar命令,打包仅仅是打包xxx.tar,打包并压缩就是xxxx.tar.gz,打包压缩的文件一定要指定文件格式,这样解包解压才好用对应的参数来解包解压缩,注意压缩包文件名和源文件位置不要颠倒了。选项-f必须放在最后,其他选项可以随意调换位置。
Linux常用基本命令详解(二)-------磁盘分区和磁盘管理类命令

相关文章:

  • 逻辑漏洞——业务逻辑问题
  • C++-vector的代码实现(超详细)
  • Linux之Platform设备驱动
  • Linux 入门篇
  • Linux驱动开发:字符设备驱动开发实战
  • 一、k8s的安装部署
  • VB.net:VB.net编程语言学习之ADO.net基本名称空间与类的简介、案例应用(实现与SQL数据库编程案例)之详细攻略
  • [iOS开发]事件处理与响应者链
  • 【CSDN线上竞赛第六期竞赛 】参赛介绍
  • 各种场景下的Git管理方法
  • 逻辑漏洞——权限控制问题
  • golang常用库之-配置文件解析 spf13/viper包 | 解析加载配置
  • Rust(7):结构体类型
  • 通信原理学习笔记6-3:数字解调——判决和误码率推导
  • Mybatis快速上手2——通用的CRUD操作
  • 深入了解以太坊
  • #Java异常处理
  • 4个实用的微服务测试策略
  • CAP 一致性协议及应用解析
  • IIS 10 PHP CGI 设置 PHP_INI_SCAN_DIR
  • uva 10370 Above Average
  • Vue2 SSR 的优化之旅
  • 程序员该如何有效的找工作?
  • 对象管理器(defineProperty)学习笔记
  • 如何使用Mybatis第三方插件--PageHelper实现分页操作
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 数组大概知多少
  • 微信小程序填坑清单
  • ​业务双活的数据切换思路设计(下)
  • $con= MySQL有关填空题_2015年计算机二级考试《MySQL》提高练习题(10)
  • (007)XHTML文档之标题——h1~h6
  • (超简单)构建高可用网络应用:使用Nginx进行负载均衡与健康检查
  • (第9篇)大数据的的超级应用——数据挖掘-推荐系统
  • (二) Windows 下 Sublime Text 3 安装离线插件 Anaconda
  • (翻译)terry crowley: 写给程序员
  • (分布式缓存)Redis分片集群
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (附源码)ssm教材管理系统 毕业设计 011229
  • (转)C语言家族扩展收藏 (转)C语言家族扩展
  • (转载)虚函数剖析
  • .equals()到底是什么意思?
  • .NET Core 项目指定SDK版本
  • .NET 编写一个可以异步等待循环中任何一个部分的 Awaiter
  • .NET 表达式计算:Expression Evaluator
  • .net 验证控件和javaScript的冲突问题
  • .NET 中使用 TaskCompletionSource 作为线程同步互斥或异步操作的事件
  • .NET项目中存在多个web.config文件时的加载顺序
  • /etc/shadow字段详解
  • :“Failed to access IIS metabase”解决方法
  • [ vulhub漏洞复现篇 ] GhostScript 沙箱绕过(任意命令执行)漏洞CVE-2019-6116
  • [ vulhub漏洞复现篇 ] Jetty WEB-INF 文件读取复现CVE-2021-34429
  • [100天算法】-实现 strStr()(day 52)
  • [2544]最短路 (两种算法)(HDU)
  • [Android]通过PhoneLookup读取所有电话号码
  • [Assignment] C++1