Linux常用命令学习一

Linux的概念

Linux,一般指GNU/Linux(单独的Linux内核并不可直接使用,一般搭配GNU套件,故得此称呼),是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦(Linus Benedict Torvalds)于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。

它支持32位和64位硬件,能运行主要的Unix工具软件、应用程序和网络协议。

Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。

Linux的常用命令

一、基本命令

立刻关机
shutdown -h now
请添加图片描述

1分钟后关机
shutdown -h 1
请添加图片描述

立刻关机
poweroff
在这里插入图片描述

立刻重启
shutdown -r now
在这里插入图片描述

1分钟后重启
shutdown -r 1
在这里插入图片描述

立刻重启
reboot

在这里插入图片描述

查询关机命令的使用方法
shutdown --help
在这里插入图片描述

查看网卡信息
ifconfig --help
在这里插入图片描述

man命令(命令说明书)
man shutdown
注意:man shutdown打开命令说明书之后,使用按键q退出
在这里插入图片描述

二、目录操作命令

切换到根目录
cd /
在这里插入图片描述

切换到根目录下的usr目录
cd /usr
在这里插入图片描述
切换到上一级目录
cd …/或者 cd …
在这里插入图片描述

切换到home目录
cd ~
在这里插入图片描述

切换到上次访问的目录
cd -
在这里插入图片描述

查看当前目录下的所有目录和文件
ls
在这里插入图片描述

查看当前目录下的所有目录和文件(包括隐藏的文件)
ls -a
在这里插入图片描述

列表查看当前目录下的所有目录和文件(列表查看,显示更多信息)
ls -l 或 ll
在这里插入图片描述
在这里插入图片描述

查看指定目录下的所有目录和文件
ls /sys
在这里插入图片描述

在当前目录下创建一个名为aaa的目录
mkdir aaa
在这里插入图片描述

在指定目录下创建一个名为aaa的目录
mkdir /aaa/aaa
在这里插入图片描述

删除当前目录下的文件
rm 文件
在这里插入图片描述

删除当前目录的的文件(不询问)
rm -f 文件
在这里插入图片描述

递归删除当前目录下的aaa目录
rm -r aaa
在这里插入图片描述

递归删除当前目录下的aaa目录(不询问)
rm -rf aaa
在这里插入图片描述

将当前目录下的所有目录和文件全部删除
rm -rf *
在这里插入图片描述

【自杀命令!慎用!慎用!慎用!】将根目录下的所有文件全部删除
rm -rf /*

注意:rm不仅可以删除目录,也可以删除其他文件或压缩包,无论删除任何目录或文件,都直接使用 rm -rf 目录/文件/压缩包
在这里插入图片描述

重命名目录
命令:mv 当前目录 新目录
例如:mv aaa bbb 将目录aaa改为bbb
注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行 重命名的操作
在这里插入图片描述

在这里插入图片描述

剪切目录
命令:mv 目录名称 目录的新位置
示例:将/usr/tmp目录下的aaa目录剪切到 /usr目录下面 mv /usr/tmp/aaa /usr
注意:mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作
在这里插入图片描述

拷贝目录
命令:cp -r 目录名称 目录拷贝的目标位置 -r代表递归
示例:将/usr/tmp目录下的aaa目录复制到 /usr目录下面 cp /usr/tmp/aaa /usr
注意:cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不 用写-r递归
在这里插入图片描述

搜索目录【查】find
命令:find 目录 参数 文件名称
示例:find /usr/tmp -name ‘a*’ 查找/usr/tmp目录下的所有以a开头的目录或文件
在这里插入图片描述

三、文件操作命令

在当前目录创建一个名为aa.txt的文件
touch aa.txt
在这里插入图片描述
修改文件
vi或vim
【vi编辑器的3种模式】
基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

  1. 命令行模式command mode)
    控制屏幕光标的移动,字符、字或行的删除,查找,移动复制某区段及进入Insert mode下,或者到 last line mode。
    命令行模式下的常用命令:
    【1】控制光标移动:↑,↓,j
    【2】删除当前行:dd
    【3】查找:/字符
    【4】进入编辑模式:i o a
    【5】进入底行模式::

  2. 编辑模式(Insert mode)
    只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
    编辑模式下常用命令:
    【1】ESC 退出编辑模式到命令行模式;

  3. 底行模式(last line mode)
    将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。
    底行模式下常用命令:
    【1】退出编辑: :q
    【2】强制退出: :q!
    【3】保存并退出: :wq

打开文件
命令:vi 文件名
示例:打开当前目录下的aa.txt文件 vi aa.txt 或者 vim aa.txt
vi aa.txt 打开文件后
在这里插入图片描述

注意:使用vi编辑器打开文件后,并不能编辑,因为此时处于命令模式,点击键盘i/a/o进入编辑模式。
使用vi编辑器打开文件后点击按键:i ,a或者o即可进入编辑模式。
在这里插入图片描述
出现INSERT代表现在正处于编辑状态
i:在光标所在字符前开始插入
a:在光标所在字符后开始插入
o:在光标所在行的下面另起一新行插入

保存文件:
第一步:ESC 进入命令行模式
INSERT消失为进入命令行模式
在这里插入图片描述

第二步:: 进入底行模式
在这里插入图片描述

第三步:wq 保存并退出编辑 或者 q! 撤销本次修改并退出编辑
在这里插入图片描述

文件的查看命令
cat:看最后一屏
示例:使用cat查看 aa.txt 文件
在这里插入图片描述

more:百分比显示
示例:使用more查看 aa.txt文件,可以显示百分比,回车可以向下一行,空格可以向下一页,q可以退出查看
more aa.txt
在这里插入图片描述

less:翻页查看

示例:使用less查看 aa.txt文件,可以使用键盘上的PgUp和PgDn向上 和向下翻页,q结束查看
less aa.txt
在这里插入图片描述

tail:指定行数或者动态查看

示例:使用tail -5 查看aa.txt文件的后5行,Ctrl+C结束
tail -5 aa.txt
在这里插入图片描述

权限修改
linux文件权限有7种:1、r权限,表示可以读该文件的内容;2、w权限,表示可以修改文件的内容;3、x权限;4、rw权限,表示可以对文件进行读写操作;5、wx权限;6、rx权限,表示可以读该文件并能执行;7、rwx权限,表示可读写、执行。

示例:给aa.txt文件权限改为可执行文件权限,aa.txt文件的权限是-rw-------

第一位:-就代表是文件,d代表是文件夹
第一段(3位):代表拥有者的权限
第二段(3位):代表拥有者所在的组,组员的权限
第三段(最后3位):代表的是其他用户的权限
使用ls -l 或者 ll 查看文件权限
在这里插入图片描述

数字修改权限
常用权限修改命令
chmod 777 文件
777中三个数字表示对不同所有者设置权限

r表示read= =读取 权限数字为4

w表示write= =写入 权限数字为2

x表示execute= =执行 权限数字为1

相加得到7,则第一个7表示为所有者赋读、写、执行的权限

后面两个7含义是一样的,只不过赋权限的对象不同。
在这里插入图片描述

若输入不足三个数字,则权限改变顺序为从后向前
在这里插入图片描述

两个数字
在这里插入图片描述
字母修改权限

一般使用chmod u+x file类似格式来修改权限

owner 拥有者==u(通过user记忆)

group 所有组==g

other 其他人==o

为拥有者添加执行权限,使用chmod u+x file
在这里插入图片描述
撤销权限,chmod u-x file
在这里插入图片描述
无视以前的权限,直接授权,chmod u=rw file(和数字权限一样,覆盖以前的权限)
在这里插入图片描述

四、压缩文件操作

常见压缩格式
1.zip 格式:Linux、Windows、MacOS 常用

2.7z 格式:Windows 系统常用

3.rar 格式:Windows 系统常用

4.tar 格式:Linux、MacOS 常用

5.gzip 格式:Linux、MacOS 常用

6.deb 格式:Linux 常用

Windows的压缩文件的扩展名 .zip/.rar
linux中的打包文件:aa.tar
linux中的压缩文件:bb.gz
linux中打包并压缩的文件:.tar.gz

Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。
而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。

1.命令:tar -zcvf 打包压缩后的文件名 要打包的文件
其中:
-c 建立一个压缩文件
-x 解开一个压缩文件
-t 查看tar压缩文件里面的文件
*以上三个参数不能同时使用,只能存在一个 **

-z 使用gzip压缩
-j 使用bzip2压缩
-v 压缩过程中显示文件(常用)但不建议用在背景执行过程!
-f 使用档名,注意:f之后要立即接档名,不能再接参数
-P 可以使用绝对路径进行压缩
-p 使用原文件的原属性(属性不会根据使用者而改变)
-N 后面接的是日期,比(yyyy/mm/dd)日期之后还要新的文件才会被打包
语法:tar [参数] 文件与目录… …

示例:打包并压缩/aaa/ccc 下的所有文件 压缩后的压缩包指定名称为ab.tar
tar -zcvf ab.tar aa.txt ddd tes.txt
或:tar -zcvf aaa.tar *
在这里插入图片描述
在这里插入图片描述
2.zip
压缩
zip 压缩后的文件名 原文件名
在这里插入图片描述
解压
unzip 要解压的文件名 -d 指定解压路径
在这里插入图片描述

五、查找命令

1.grep

grep命令是一种强大的文本搜索工具
ps -ef | grep sshd 查找指定ssh服务进程
在这里插入图片描述

ps -ef | grep sshd | grep -v grep 查找指定服务进程,排除gerp
在这里插入图片描述

ps -ef | grep sshd -c 查找指定进程个数
在这里插入图片描述

2.find

find命令是Linux系统中最常用的文件查找工具之一,它可以查找指定目录中的文件,并可以按照文件名、文件类型、文件大小、最近访问时间等多种方式进行过滤和搜索。

  1. 基本用法
    find命令的基本语法为:
    find [dir] [expression]

其中,dir表示要查找的目录,如果不指定,则默认在当前目录下查找;expression表示用于过滤和搜索的表达式,它可以是多个选项和参数的组合。

例如,要在当前目录下查找名称为test.txt的文件,可以使用以下命令:

find . -name “test.txt”
在这里插入图片描述

其中".“表示当前目录,”-name"选项后跟随的是要查找的文件名称。

  1. 高级用法

除了基本的文件名称查找外,find命令还支持许多高级功能,例如按照文件类型、文件大小、最近访问时间等条件进行搜索。下面是一些具体的用法:

a. 按文件类型查找:

find . -type f 查找所有普通文件
在这里插入图片描述

find . -type d 查找所有目录
在这里插入图片描述

"-type"选项后跟随的是要查找的文件类型,f表示普通文件,d表示目录。

b. 按文件大小查找:

find . -size +10M 查找大小大于10M的文件
在这里插入图片描述

find . -size -10k 查找大小小于10k的文件
在这里插入图片描述

“-size"选项后跟随的是要查找的文件大小,”+“表示大于,”-"表示小于,大小单位可以是k、M、G等。

c. 按文件修改时间查找:

find . -mtime +30 查找修改时间30天前的文件
在这里插入图片描述

find . -mtime -2 查找修改时间在2天内的文件
在这里插入图片描述

“-mtime"选项后跟随的是要查找的时间,”+“表示在这个时间之前,”-"表示在这个时间之后。

d. 组合使用选项:

find . -name “*.txt” -type f -size +10M -mtime -30
在这里插入图片描述

以上命令表示在当前目录下查找名称为*.txt的文件,且文件大小大于10M,修改时间在30天内的文件。

3.locate

locate 让使用者可以很快速的搜寻某个路径。
默认每天自动更新一次,所以使用locate 命令查不到最新变动过的文件。
为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。
如果数据库中没有查询的数据,则会报出
locate: can not stat () `/var/lib/mlocate/mlocate.db’: No such file or directory
该错误!updatedb即可!

locate /aaa/a 搜索aaa目录下所有以a开头的文件
locate pwd 查找和pwd相关的所有文件
在这里插入图片描述

locate 与 find 命令的区别?
在 Linux 系统中,locate 和 find 命令都可以用于查找文件或目录,但它们的工作方式和使用场景略有不同。

locate 命令基于系统上建立的文件名数据库(一般为 /var/lib/mlocate/mlocate.db),可以快速地查找文件或目录,因为它不会在实际的文件系统上搜索,而是搜索一个预先建立好的数据库。但是,因为数据库的更新存在延迟,则可能会找不到最新的文件。

find 命令是在文件系统上进行实际搜索的。它可以搜索指定目录及其子目录下符合指定条件的文件或目录,并支持更复杂的搜索条件,如按文件类型、修改时间等进行过滤。由于 find 是在文件系统上进行搜索的,因此相对于 locate,它的搜索速度会慢一些,但它可以搜索到最新的文件。

总的来说,如果需要快速地查找文件或目录,可以使用 locate 命令,而如果需要更灵活的搜索条件,可以使用 find 命令。另外,在使用 locate 命令时,应该先使用 updatedb(1) 命令更新文件名数据库,以便可以搜索到最新的文件。

locate命令格式
locate [OPTION]… PATTERN…
参数
-A, --all
只显示匹配所有模式的条目
locate -A ‘.txt’在这里插入图片描述

-b, --basename
只匹配文件的基本名。作用与选项 --wholename 相反
在这里插入图片描述

-c, --count
只输出符合匹配模式的文件的数量
在这里插入图片描述

-d, --database DBPATH
将默认数据库替换为 DBPATH

-e, --existing
只打印当前存在的文件
在这里插入图片描述

-L, --follow
当检查文件是否存在时(如果选项 --existing 指定时),检查符号链接的目标文件(默认,相反的选项是 --nofollow)
在这里插入图片描述

-h, --help
显示帮助信息并退出
在这里插入图片描述

-i, --ignore-case
比较时忽略大小写
在这里插入图片描述

-l, --limit, -n LIMIT
限制成功匹配的文件数为 LIMIT
在这里插入图片描述

-P, --nofollow, -H
当检查文件是否存在时(如果选项 --existing 指定时),不检查符号链接的目标文件。作用与 --follow 相反
在这里插入图片描述

-0, --null
在输出时使用 ASCII NUL 字符分隔条目,而不是将每个条目写在单独的行上。此选项是为了与 GNU xargs的 --null 选项配合使用而设计的
在这里插入图片描述

-S, --statistics
不搜索文件,而是显示每个数据库的统计信息在这里插入图片描述

-V, --version
输出 locate 的版本和许可信息并退出
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值