- 很高心您打开了本篇博客;
- 本篇是Linux专栏札记中的第五篇;
- 主要作用:让我们操作linux系统像操作windows系统一样顺手;
- 在第一篇中,我们梳理了:配置虚拟机和linux的环境的图文步骤笔记;
一,Linux基础介绍和配置环境。2024年最新完整图文安装详细步骤 VMware虚拟机和CentOS操作系统。以及如何配置Linux连接互联网详细步骤。-CSDN博客
- 在第二篇中我们梳理了一些liunx系统常用的命令:路径相关,文件相关,压缩和解压相关,查看和查找相关,打印,管道符,重定向,通配符等相关命令;
二,Linux常用命令一。 ls、cd、pwd、mkdir、touch、cp、mv、rm-rf、cat、less、more、tar、zip、which、find、grep、wc等用法-CSDN博客
- 在第三篇中,我们梳理了:linux常用的快捷键,vim编辑器,用户和用户组相关指令,权限相关,软件安装相关,yum更换国内镜像源,任务管理器(服务器,进程,内存,磁盘)相关;
- 在第四篇,我们梳理了:ip和主机相关命令,如何固定虚拟机的ip,端口相关命令,网络传输与下载相关命令,时间相关,liunx系统环境变量,软连接(创建快捷方式)与硬链接相关命令,文件上传与下载相关命令。
四,Linux常用命令三。ip,主机,端口,固定虚拟机ip,网络传输,软/硬连接,时间,环境变量,文件上传与下载-CSDN博客
- 本篇内容:主练习linux海量的常用命令。
学习:知识的初次邂逅
复习:知识的温故知新
练习:知识的实践应用
本篇主要内容:练习以上四篇中Linux最常用的相关命令
逐一写完下面的练习题,差不多能玩了~
目录
1,命令组成部分练习
Linux 中的命令由几部分组成?分别说出每部分的功能。
命令格式
command [-options] [parameter]
命令 -选项 参数
例如 ls -alh /home
2,路径相关命令练习
如果
pwd
显示当前路径在/home/python/Desktop
目录下,我们该如何到/home/python/Music
目录下呢?试用相对路径和绝对路径两种方式实现。
#desktop 和music是同级别目录
#绝对路径 直接进入
cd music
#绝对路径 从根目录进入
cd /home/python/Music
'''
绝对路径
在Linux系统中,绝对路径从根目录(/)开始,然后依次遍历目录结构直到目标文件或目录。例如,/home/python/Desktop 就是绝对路径;
在Windows系统中,绝对路径从盘符(如C:、D:等)开始,后面跟着该盘符下的目录结构,直到目标文件或目录。例如 D:\学习资料\python\test.py
'''
'''
相对路径
是从当前工作目录开始,然后指向目标文件或者目标文件夹的路径。他不依赖盘符和根目录;
例如/home/python/Desktop 和/home/python/Music
同级别目录: 我们观察得知 desktop和music都是在同级别目录下,所以我们切换进入music 直接cd就中;
父级别目录:../某某文件夹/某文件 或者../../../某某文件;
子级别目录: 同级别某某文件夹/某某文件;
'''
3,目录相关命令练习
1,查看根目录下的所有文件、目录的详细信息。
#题干:查看根目录下的所有文件、目录的详细信息
ls -alh
ls 查看文件信息
常用的参数有-a -l -h
ls -a :查看隐藏文件夹
ls -l :以列表形式查看当前的文件信息 简写ll
ls -lh :通常配合 l 一起使用。可以更加人性化的查看文件的大小,也就是可以显示文件的k M G信息
更多参数可以 man ls 查看【有困难找男人】 也可以通过 ls --help查看更多详细信息
cd 进入文件夹目录
cd ~ 返回家目录
cd - 返回上一个目录
cd / 返回根目录
cd .. 返回上一级目录
cd 路径 进入指定路径
cd ../../ 进入上一级别的上一级别
4,文件相关命令练习一
-
新建文件夹名为dirfile
mkdir dirfile
-
进入dirfile文件夹,展示当前路径,分别新建文件为:a.txt,b.txt
cd mkdir touch a.txt b.txt
-
拷贝a.txt 并重命名fz.txt
cp a.txt fz.txt
-
删除a.txt文件
rm -rf fz.txt
总结
mkdir 通常用来创建文件夹 也可以批量创建多个; 加上-p可以创建 不存在的目录下的文件夹目录和文件夹目录下的文件
touch 通常用来创建文件 ,也可以批量创建多个;要使用这个指令创建更深目录下的文件,前提是目录文件夹必须存在;
cd 通常用来进入/切换目录 。详情第一题已简答;
cp 是复制文件或者文件夹 也可以重命名文件(前提是文件不存在的时候);复制文件夹的时候需要加上 -r
rm 是删除文件或者文件夹 通常加上 rm -rf 组合是个非常霸道的指令。也是铁窗泪最有效的指令 sudo rm -rf /
5,文件相关命令练习二
-
使用Linux命令查看当前目录下的文件、文件夹的名字
ls ls -a ls -lh ls -alh ll
-
在当前路径下创建A文件夹
mkdir A
-
在上一步创建的A文件夹中,创建B文件夹
mkdir A/B
-
在第2步所在的路径中,使用一个命令在A/B文件夹中创建C文件夹
mkdir A/B/C
-
A/B/C中创建一个hello.py文件
touch A/B/C/hello.py
-
在A/B文件夹中创建一个world.py文件
touch A/B/world.py
当前路径树 [root@node1 /]# tree A/ A/ └── B ├── C │ └── hello.py └── wold.py
-
复制A/B/C/hello.py文件到桌面
cp -p A/B/C/hello.py /hello.py
-
将A/B/C/haha.py文件移动到A/B文件夹中
#创建haha.py touch A/B/C/haha.py #移动该文件到A/B中 mv A/B/C/haha.py A/B/haha.py
-
查看当前操作的路径
pwd
-
跳转到桌面路径
cd /
-
删除桌面上的hello.py文件
rm -rf hello.py
-
在桌面创建test文件夹
mkdir test
总结
ls 通常用来查看文件或者文件夹信息;第二题已简答;
mv 通常用来移动文件或者移动文件夹,也可以重命名文件夹(前提是文件夹不存在);
pwd 通常是查看当前的绝对路径
mkdir 通常用来创建文件夹 也可以批量创建多个; 加上-p可以创建 不存在的目录下的文件夹目录和文件夹目录下的文件
touch 通常用来创建文件 ,也可以批量创建多个;要使用这个指令创建更深目录下的文件,前提是目录文件夹必须存在;
cd 通常用来进入/切换目录 。详情第一题已简答;
cp 是复制文件或者文件夹 也可以重命名文件(前提是文件不存在的时候);复制文件夹的时候需要加上 -r
rm 是删除文件或者文件夹 通常加上 rm -rf 组合是个非常霸道的指令。也是铁窗泪最有效的指令 sudo rm -rf /
6,文件相关命令练习三
-
简述相对路径和绝对路径的区别
/* 绝对路径 在Linux系统中,绝对路径从根目录(/)开始,然后依次遍历目录结构直到目标文件或目录。例如,/home/python/Desktop 就是绝对路径; 在Windows系统中,绝对路径从盘符(如C:、D:等)开始,后面跟着该盘符下的目录结构,直到目标文件或目录。例如 D:\学习资料\python\test.py */ /* 相对路径 是从当前工作目录开始,然后指向目标文件或者目标文件夹的路径。他不依赖盘符和根目录; 例如/home/python/Desktop 和/home/python/Music 同级别目录: 我们观察得知 desktop和music都是在同级别目录下,所以我们切换进入music 直接cd就中; 父级别目录:../某某文件夹/某文件 或者../../../某某文件; 子级别目录: 同级别某某文件夹/某某文件; */
-
在桌面上的A/B/C/D/E/F/G文件夹下,创建一个文件夹MM
mkdir -p A/B/C/D/E/F/G/MM
-
使用相对路径跳转到C文件夹中
cd A/B/C
-
在C文件夹中创建一个HH文件夹
mkdir HH
-
显示从A文件夹开始的目录树
tree /A
7,文件相关命令练习四
归纳总结rm、mv在操作文件/文件夹时的区别
都可以让文件和文件夹理论上消失;
rm 是真的让文件或者文件夹消失了
mv 仅仅只是让文件或者文件夹换一个地方而已
rm 是霸道的删除指令 通常配上 -rf 会更加的霸道 在使用 rm -rf 删除的时候一定要仔细观察目标路径,防止误删;
mv 通常用来移动文件或者移动文件夹,也可以重命名文件夹(前提是文件夹不存在);
8,文件相关命令练习五
在/home/python/Desktop路径中有一个文件夹heima,且heima文件夹中有n个文本文件,如何将heima这个文件夹删除?
rm -rf /home/python/Desktop/heima
9,文件相关命令练习六
-
在桌面目录上创建一个
code 目录
;cd / mkdir code
-
在
code 目录
下创建一个新目录data
;mkdir code/data
-
在
data 目录
下创建一个新文件file1
;tuoch code/data/file1.py
-
在
code
目录下创建一个多级嵌套的目录A/B/C/D/E/
;mkdir -p code/A/B/C/D/E/ 当前路径树 [root@node1 /]# tree code/ code/ ├── A │ └── B │ └── C │ └── D │ └── E └── data └── file1.py
-
将
file1
文件拷贝到E
目录下;cp -r code/data/file1.py code/A/B/C/D/E/ 当前路径树 [root@node1 /]# tree code/ code/ ├── A │ └── B │ └── C │ └── D │ └── E │ └── file1.py └── data └── file1.py
-
将
data
目录拷贝到C
目录下(与 D 同级);cp -r code/data code/A/B/C/ 当前路径树 [root@node1 /]# tree code/ code/ ├── A │ └── B │ └── C │ ├── D │ │ └── E │ │ └── file1.py │ └── data │ └── file1.py └── data └── file1.py
-
将
code 目录
下的data
目录中的file1
删除;rm -rf code/data/file1.py 当前路径树 [root@node1 /]# tree code/ code/ ├── A │ └── B │ └── C │ ├── D │ │ └── E │ │ └── file1.py │ └── data │ └── file1.py └── data
10,权限相关命令练习一
题干:在ls 命令查看文件详细信息时,r、w、x分别代表什么权限?是否可以更改?用什么命令更改?
r 全称read 代表读的权限
w 全称 write 代表写入的权限
x 全称 execute 代表执行的权限
示例
-rwxr-x--r
9组了r,w,x的信息
第一组 rwx三个字符 是当前文件所属用户的权限(user)
第二组 r-x三个字符 是当前文件所属组的权限(group)
第三组 --r三个字符 是其他人的权限(owner)
权限是可以更改的,前提是自己用户所属的文件或者root用户;
用chmod命令更改
chmod 更改权限命令 有字母法和数字方
字母法 示例: chmod ugx=r-x 文件
结果:r-xr-xr-x 把用户,用户组,其他人统一设置为 可读不可写可执行的权限
chmod u=rwx,g+w,o-x
结果:rwxrwxr-- 用户读写执行,用户组添加了写入的权限,其他人去除了执行的权限
chomd u=r,go=rx
结果 r--r-xr-x
数字法 4代表读取 ,2代表写入,1是执行 , 3是1+2也就是执行+写入 ,5是4+1也就是执行+读取
6是4+2也就是读取+写入 , 7是4+2+1也就是读取+写入+执行
示例 chmod 421 文件
结果:r---w---x
示例 chomod 777 文件
结果 rwxrwxrwx
示例 chmod 666 文件
结果 rw-rw-rw-
11,权限相关命令练习二
题干:
-
在系统/目录下新建一个文件 data.cnf
-
使用数字法将data.cnf的权限修改为 rwxrw-r--
-
使用字母法将data.cnf的权限修改为 rw-r-----
cd /
touch data.cnf
chmod 764 data.cnf
chmod u=rw,g=r,o-r data.cnf
#或者
chmod u-x,g-w,o-r data.cnf
12,权限相关命令练习三
题干:
-
在系统/目录下新建一个文件 a.txt
-
把a.txt的所属用户改成 itcast
-
把a.txt的所属组改成 itcast
-
把a.txt的所属用户和组同时更改为 root和root
cd /
touch a.txt
useradd itcast
chown itcast a.txt
chown :itcast a.txt
chown root:root a.txt
13,vim编辑器命令练习一
题干:vim有几种工作模式?分别是什么?
三种模式:命令模式 ,底行模式 , 编辑模式;
命令模式(我是中转站,按i可以进入编辑模式,按:进入底行模式,按其他指令也可以执行批量复制,删除,添加等操作);
编辑(输入)模式(我是干活的,按esc可以进入命令模式);
底行模式(我是搞退出的,按w,wq,q!,wq!,分别是退出,保存退出,强制退出,强制保存退出。按下esc回到命令模式)。
14,vim编辑器相关命令二
题干:
1.使用vi编辑器打开一个文件(文件可以不存在)
2.添加以下内容
print("hello")
3.将以上内容修改如下
print("HELLO")
4、保存文件并退出
vi test.py
进入之后按i 进入编辑模式
输入print("hello")
在修改成一下 print("HELLO")
按esc进入命令模式
按: 进入底行模式
按wq 保存并退出
15,压缩与解压命令练习一
题干:
-
tar命令的作用是什么?
-
tar命令的-c和-x参数分别代表什么意思
-
写出使用tar打包文件的用法
可以打包,解包,压缩,解压 -c是打包/配合z是压缩,-x是解包/配合z是解压 ------------------------------------------------------------------------------------ 1,打包 [root@node1 ttt]# tar -cvf t1.tar 11.py 2.py ------------------------------------------------------------------------------- 2,解包 [root@node1 ttt]# tar -xvf t1.tar -C B/ -------------------------------------------------------------------------------------- 3,压缩 [root@node1 ttt]# tar -zcvf t2.tar.gz 4.txt ------------------------------------------------------------------------------------- 4,解压 [root@node1 ttt]# tar -zxvf t2.tar.gz -C m4/ ------------------------------------------------------------------------------------
16,压缩与解压命令练习二
题干:小明经过两周的时间基本熟悉代码之后,跃跃欲试准备撸代码了。老大说,别急先把自己环境搭好。假设 小明打开浏览器 http://nginx.org/download/nginx-1.14.2.tar.gz成功下载这个文件到当前目录,接下来几个步骤小明如何操作呢?
-
将
nginx-1.14.2.tar.gz
文件解压到/export/server目录(如果该目录不存在则创建)tar -zxvf nginx-1.14.2.tar.gz -C /export/server
-
将
nginx-1.14.2.tar.gz
文件删除rm -rf nginx-1.14.2.tar.gz
-
将解压出来的文件夹
nginx-1.14.2
压缩为nginx.tar.gz
文件cd /export/server tar -zcvf nginx.tar.gz nginx-1.14.2
-
删除文件夹
nginx-1.14.2
和nginx.tar.gz
rm -rf nginx-1.14.2 rm -rf nginx.tar.gz
17,压缩与解压命令练习三
题干:
-
新建a.txt、b.txt、c.txt文件,并打包成压缩包命名为abc.tar。
touch a.txt b.txt c.txt tar -zcvf abc.tar.gz a.txt b.txt c.txt
-
解压abc.tar压缩包。
tar -zxvf abc.tar.gz
-
给a.txt文件增加当前用户执行权限。
chmod g+x a.txt
18,网络和进程相关命令练习
题干:
-
如何查看自己的IP地址?
ip addr #或者 ifconfig
-
如何查3306端口有没有被占用?
netstat -nptl | grep 3306 #或者 netstat -anp |grep 3306
-
如何实时查看系统资源占用情况和占用资源比较多的应用程序.
top 或者 ps -ef
-
如何搜索sshd进程是否正在运行.
ps -ef |grep sshd
-
如何下载指定url:https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png下的文件.
wget https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png #或者 curl -O https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png
19,shell脚本相关命令练习
题干:
1.编写一个名称test1.sh的shell脚本文件.
2.定义变量name的值是tom
3.定义变量age的值是18
4.输出: "姓名:tom,年龄:18,打印时间:2024-04-07 XX:XX:XX"
5.使用不同的方式来运行这个shell脚本.
[root@node1 ~]# vim test1.sh
#!/bin/bash
name=tom
age=18
echo "姓名:$name,年龄:$age,打印的时间`date +'%Y-%m-%d %H:%M:%S'`"
[root@node1 ~]# sh test1.sh
姓名:tom,年龄:18,打印的时间2024-07-16 19:35:38
[root@node1 ~]# chmod u+x test1.sh
[root@node1 ~]# ./test1.sh
姓名:tom,年龄:18,打印的时间2024-07-16 19:36:04
[root@node1 ~]# /root/test1.sh
姓名:tom,年龄:18,打印的时间2024-07-16 19:36:19
[root@node1 ~]# source test1.sh
姓名:tom,年龄:18,打印的时间2024-07-16 19:36:29
- 学习:知识的初次邂逅
- 复习:知识的温故知新
- 练习:知识的实践应用
linux命令有很多,本篇主练习与应用
谢谢观看!