千家信息网

Linux磁盘管理和Shell编程知识点有哪些

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要介绍"Linux磁盘管理和Shell编程知识点有哪些",在日常操作中,相信很多人在Linux磁盘管理和Shell编程知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法
千家信息网最后更新 2026年11月03日Linux磁盘管理和Shell编程知识点有哪些

这篇文章主要介绍"Linux磁盘管理和Shell编程知识点有哪些",在日常操作中,相信很多人在Linux磁盘管理和Shell编程知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Linux磁盘管理和Shell编程知识点有哪些"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

磁盘管理

Linux磁盘管理常用三个命令为df、du和fdisk。

列出文件系统的磁盘使用状况

列出文件系统的磁盘使用状况 - 「df」。

文件系统        容量  已用  可用 已用% 挂载点 udev            1.9G     0  1.9G    0% /dev tmpfs           393M  6.3M  386M    2% /run /dev/sda1        19G   13G  5.5G   69% / tmpfs           2.0G  300K  2.0G    1% /dev/shm tmpfs           5.0M  4.0K  5.0M    1% /run/lock tmpfs           2.0G     0  2.0G    0% /sys/fs/cgroup tmpfs           393M  4.0K  393M    1% /run/user/108 tmpfs           393M   60K  393M    1% /run/user/1000 /dev/sr0        1.6G  1.6G     0  100% /media/maoli/Ubuntu 16.04.6 LTS amd64

磁盘分区表操作

磁盘分区表操作 - 「fdisk」。

maoli@ubuntu:~$ sudo fdisk -l [sudo] maoli 的密码:   Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xdc219461  设备       启动    Start   末尾   扇区  Size Id 类型 /dev/sda1  *        2048 39942143 39940096   19G 83 Linux /dev/sda2       39944190 41940991  1996802  975M  5 扩展 /dev/sda5       39944192 41940991  1996800  975M 82 Linux 交换 / Solaris

磁盘分区工具

磁盘分区工具 - 「parted」。

格式化文件系统

格式化文件系统 - 「mkfs」。

maoli@ubuntu:~$ mkfs -t ext4 -v /dev/sdb
  • -t - 指定文件系统的类型。

  • -c - 创建文件系统时检查磁盘损坏情况。

  • -v - 显示详细信息。

文件系统检查

文件系统检查 - 「fsck」。

转换或拷贝文件

转换或拷贝文件 - 「dd」。

挂载/卸载

挂载/卸载 - 「mount」 / 「umount」。

创建/激活/关闭交换分区

创建/激活/关闭交换分区 - 「mkswap」 / 「swapon」 / 「swapoff」。

参考菜鸟教程:"https://www.runoob.com/linux/linux-filesystem.html"

Shell

Shell是一个连接用户和操作系统的应用程序,它提供了人机交互的界面(接口),用户通过这个界面访问操作系统内核的服务。Shell脚本是一种为Shell编写的脚本程序,我们可以通过Shell脚本来进行系统管理,同时也可以通过它进行文件操作。

互联网上有大量关于Shell脚本的相关知识,我不打算再此对Shell脚本做一个全面系统的讲解,我们通过下面的代码来感性的认识下Shell脚本就行了。

新建Shell脚本

打开文本编辑器(可以使用 vi/vim 命令来创建文件),新建一个文件 test.sh,扩展名为 sh(sh代表shell)。

maoli@ubuntu:~$ vim test.sh  #!/bin/bash echo "Hello World !"

输入一个echo "Hello World !",这个语法和php很相似。运行一个sh需用 chmod +x脚本具有执行权限

maoli@ubuntu:~$ chmod +x ./test.sh maoli@ubuntu:~$ ./test.sh  Hello World !

变量

变量名不加美元符号($,PHP语言中变量需要)。比如在shell中 定义变量name = Runsen,而在php就是$name = Runsen使用一个定义过的变量,只要在变量名前面加美元符号即可,如:$name或者${name}。变量名外面的花括号是可选的,加不加都行。

变量支持字符串类型,浮点等类型,常见有这 3 个前缀:

  • unset:删除变量

  • readonly:标记只读变量

  • export:指定全局变量

#!/bin/bash   # 定义普通变量,没有特殊字符或者空格,可以不用引号 CITY=Dongguan  # 定义全局变量 export NAME=Runsen  # 定义只读变量 readonly AGE=20  # 打印变量的值 echo $CITY echo $NAME echo $AGE  # 删除 CITY 变量 unset CITY # 不会输出 Dongguan echo $CITY

预定义变量

预定义变量常用来获取命令行的输入,有下面这些:

$0 :脚本文件名 $1-9 :第 1-9 个命令行参数名 $# :命令行参数个数 $@ :所有命令行参数 $* :所有命令行参数 $? :前一个命令的退出状态,可用于获取函数返回值 $$ :执行的进程 ID

一个例子:

#!/bin/bash  echo "\$0 = $0" echo "\$1 = $1" echo "\$2 = $2" echo "\$# = $#" echo "\$@ = $@" echo "\$* = $*" echo "\$$ = $$" echo "\$? = $?"

执行./hello.sh 1 2 3 4 5 的结果:

# 程序名 $0 = ./hello.sh # 第一个参数 $1 = 1 # 第二个参数 $2 = 2 # 一共有 5 个参数 $# = 5 # 打印出所有参数 $@ = 1 2 3 4 5 # 打印出所有参数 $* = 1 2 3 4 5 # 进程 ID $$ = 9450 # 之前没有执行其他命令或者函数 $? = 0

if语句

「sh的流程控制不可为空」

#!/bin/bash  read VAR # 下面这两种判断方法都可以,使用 [] 注意左右加空格 #if test $VAR -eq 10 if [ $VART -eq 10 ] then     echo "true" else     echo "false" fi

read 的方法就python中的input,写成一行(适用于终端命令提示符):

if [ $VART -eq 10 ]; then echo "true"; else echo "false";fi

for 循环

for 循环和Python没有什么区别,挺简单的

# 普通 for 循环 for ((i = 1; i <= 3; i++)) do     echo $i done  # loop 依次代表每个元素  for loop in 1 2 3 4 5 do     echo "The value is: $loop" done  # VAR 依次代表每个元素 ,{}产生连续数字 for VAR in {1..3} do     echo $VAR done  #也可以写成一行,方便在命令行直接运行,注意空格和;号: maoli@ubuntu:~$ for VAR in {1..3}; do  echo $VAR; done 1 2 3

printf打印

printf 命令模仿 C 程序库(library)里的 printf() 程序, 这里补充-e开启转义\c不换行,其他和Python一样。

maoli@ubuntu:~$ echo "It is a test" It is a test maoli@ubuntu:~$ echo -e "OK! \n" OK!   maoli@ubuntu:~$ printf "%-10s %-8s %-4s\n" 姓名 性别 体重kg   姓名     性别   体重kg maoli@ubuntu:~$ printf "%-10s %-8s %-4.2f\n" Runsen 男 65 Runsen     男      65.00

test 检查

Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试。

比如下判断两个字符串是否相同t

num1="Runsen" num2="Runsen" if test $num1 = $num2 then     echo '两个字符串相等!' else     echo '两个字符串不相等!' fi 两个字符串相等!

Shell 函数

shell中函数的定义格式如下:

#!/bin/bash   demoFun(){     echo "这是我的第一个 shell 函数!" } echo "-----函数开始执行-----" demoFun echo "-----函数执行完毕-----"  -----函数开始执行----- 这是我的第一个 shell 函数! -----函数执行完毕-----

shell实例

求和

例子1:输入两个整数m和n,计算从m到n的整数求和的结果。

#!/usr/bin/bash printf 'm = ' read m printf 'n = ' read n a=$m sum=0 while [ $a -le $n ] do     sum=$[ sum + a ]     a=$[ a + 1 ] done echo '结果: '$sum

创建文件夹和文件

例子2:自动创建文件夹和指定数量的文件。

#!/usr/bin/bash printf '输入文件名: ' read file printf '输入文件数量(<1000): ' read num if [ $num -ge 1000 ] then     echo '文件数量不能超过1000' else     if [ -e $dir -a -d $dir ]     then         rm -rf $dir     else         if [ -e $dir -a -f $dir ]         then             rm -f $dir         fi     fi     mkdir -p $dir     index=1     while [ $index -le $num ]     do         if [ $index -lt 10 ]         then             pre='00'         elif [ $index -lt 100 ]         then             pre='0'         else             pre=''         fi         touch $dir'/'$file'_'$pre$index         index=$[ index + 1 ]     done fi

到此,关于"Linux磁盘管理和Shell编程知识点有哪些"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

文件 变量 磁盘 命令 系统 函数 参数 脚本 管理 字符 知识 两个 字符串 程序 检查 输入 知识点 编程 类型 学习 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网金融科技 新华互联网科技学院 易互联网科技有限公司 高科技与互联网 中国互联网科技发展 互联网科技创新企业排名 汽车互联网创新科技园 湖南一路畅行互联网科技 互联网科技大奖都有哪些公司 华夏恒生科技与互联网科技 朱啸虎曾投资哪些互联网科技企业 世界互联网领先科技成果获奖 济南有互联网科技公司吗 中科明德北京互联网科技 沐思想互联网科技有限公司 上海创道互联网络科技有限公司 下一代互联网重大应用科技园 科技和互联网行业的特点 互联网领先科技成果宣传视频 株洲百竞科技的互联网营销顾问 互联网金融和金融科技 成都仁贤领冠互联网科技有限公司 中国最先进互联网科技公司 温州喔噻互联网科技有限公司 互联网为啥属于高科技 苏州五指互联网络科技有限 互联网科技扶贫时间 互联网数据科技专业 吉林省码上互联网科技电话 互联网时代科技型公司的机会
0