热门IT资讯网

8.3磁盘3

发表于:2024-11-23 作者:热门IT资讯网编辑
编辑最后更新 2024年11月23日,上节修改:for I in `seq 0 $#`;doif [ $# -gt 0 ];thencaseesacfi复习:$0 当前脚本的文件名$n 传递给脚本或函数的参数$# 传递给脚本或函数的参数个

上节修改:

for I in `seq 0 $#`;do

if [ $# -gt 0 ];then

case

esac

fi

复习:

$0 当前脚本的文件名

$n 传递给脚本或函数的参数

$# 传递给脚本或函数的参数个数

$* 传递给脚本或函数的所有参数

$@ 传递给脚本或函数的所有参数。被双引号(" ")包含时,

与 $* 稍有不同

$? 上个命令的退出状态,或函数的返回值

$$ 当前Shell进程ID。对于 Shell 脚本,就是这些脚本所在的进程ID

练习:写一个脚本showlogged.sh,其用法格式为:

showlogged.sh -v -o -h|--help

其中,-h选项只能单独使用,用于显示帮助信息;

-c选项时,显示当前系统上登录的所有用户数;

如果同时使用了-v选项,则既显示同时登录的用户数,又显示

登录的用户的相关信息;如

Logged users:4.


They are:

root tty2 Feb 18 02:41

....


vim showlogged.sh

#!/bin/bash

#

declare -i SHOWNUM=0

declare -i SHOWUSERS=0


for I in `seq 1 $#`;do

if [ $# -gt 0 ];then

case $1 in

-h|--help)

echo "Usage:`basename $0` -h|--help -c|--count -v|00verbose"`

exit 0

;;

-v|--verbose)

let SHOWUSERS=1

shift ;;

-c|--count)

let SHOWNUM=1

shift ;;

*)

echo "Usage:`basename $0` -h|--help -c|--count -v|00verbose"`

exit 7

;;

esac

fi

done


if [ $SHOWNUM -eq 1 ];then

echo "logged users: `who | wc -l`."

if[ $SHOWUSER -eq 1 ];then

echo "They are:"

who

fi

fi


磁盘管理:


机械式硬盘

U盘 光盘 软盘 硬盘 磁带


solid


partition 分区

创建独立的文件系统的

MBR 主引导记录 (0 磁道的512Byte)

Master Boot Record

Main Boot Record

划分3个片段:

446bytes:BootLoader 程序

64bytes:

每16个字节标识一个分区

2bytes: Magic Number

标记MBR是否有效



主+扩展分区 <= 4

块位图:bitmap

inode(index node)

目录:inode

文件名

目录项 dentry

block group


硬链接 像这一种直接指向同一个inode的不同路径,他们彼此之间

可以称作硬链接

ls -l 显示的数字是硬链接的次数

1、只能对文件创建,不能应用于目录

2、不能跨文件系统

3、创建硬链接会增长文件被链接的次数


符号链接

1、可应用于目录

2、可以跨文件系统

3、不会增加被链接文件的链接次数

4、其大小为指定的路径所包含的字符个数


ln [-s,-v] SRC DECT

-v 可以显示过程

-s 表示创建软连接

不带任何选项就是创建硬链接

ln -s abc test/abc2


du 显示文件所占有的磁盘空间大小的

-s 目录及目录中的子文件所占用的磁盘空间大小

-h


df 显示整个磁盘分区的使用清况的

-h

-i 显示整个磁盘分区inode的使用清况

-P 不能放在同一行显示的,不换行显示


















0