欢迎各位兄弟 发布技术文章
这里的技术是共享的
adminusers3-3.sh 修改后的代码
#!/bin/bash
#
DEBUG =0
ADD=0
DEL=0
for I in `seq 1 $#`; do
if [ $# -gt 0 ] ; then
case $1 in
-v|--verbose)
DEBUG=1
shift;;
--add)
ADD=1
ADDUSERS=$2
shift 2;;
--del)
DEL=1
DELUSERS=$2
shift 2;;
--help)
echo "Usage `basename $0` --add USER_LIST --del USER_LIST -v|--verbose| -h|--help"
exit 0;;
*)
echo "Usage `basename $0` --add USER_LIST --del USER_LIST -v|--verbose| -h|--help"
exit 8;;
esac
fi
done
if [ $ADD == 1 ];then
for I in `echo $ADDUSERS | sed 's@,@ @g'`; do
if id $I &> /dev/null; then
[ $DEBUG -eq 1 ] && echo "$I exist ,can not add"
else
useradd $I
[ $DEBUG -eq 1 ] && echo "$I user add success"
fi
done
fi
if [ $DEL == 1 ];then
for I in `echo $DELUSERS | sed 's@,@ @g'`; do
if id $I &> /dev/null; then
userdel -r $I
[ $DEBUG -eq 1 ] && echo "$I delete success"
else
[ $DEBUG -eq 1 ] && echo "$I not exist. can delete $I"
fi
done
fi
[root@ebs-22618 ~]# echo $? (美元符问号,是上一次执行的退出码)
[root@ebs-22618 ~]# 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|--verbose"
exit 0;;
-v|--verbose)
let SHOWUSERS=1
shift;;
-c|--count)
let SHOWNUM=1
shift;;
*)
echo "Usage: `basename $0` -h|--help -c|--count -v|--verbose"
exit 8;;
esac
fi
done
if [ $SHOWUNM -eq 1 ];then
echo "Logged users: `who | wc -l` ."
if [ $SHOWUSERS -eq 1 ]; then
echo "They are:"
who
fi
fi
[root@ebs-22618 ~]# ./showlogged.sh -h
Usage: showlogged.sh -h|--help -c|--count -v|--verbose
[root@ebs-22618 ~]# ./showlogged.sh --help
Usage: showlogged.sh -h|--help -c|--count -v|--verbose
[root@ebs-22618 ~]# echo $?
0
[root@ebs-22618 ~]# ./showlogged.sh --hel
Usage: showlogged.sh -h|--help -c|--count -v|--verbose
[root@ebs-22618 ~]# echo $?
8
[root@ebs-22618 ~]# ./showlogged.sh -c
Logged users: 1 .
[root@ebs-22618 ~]#
[root@ebs-22618 ~]# ./showlogged.sh --count
Logged users: 1 .
[root@ebs-22618 ~]#
[root@ebs-22618 ~]# ./showlogged.sh -v -c
Logged users: 1 .
They are:
root pts/3 2018-06-15 20:23 (114.218.6.158)
[root@ebs-22618 ~]#
磁盘管理:
U盘,光盘,软盘,硬盘,磁带机
(solid 固态硬盘)
同心圆 就是磁道
分区是逻辑边界
低级格式化
Partition
文件系统
MBR:主引导记录(512字节)
Master Boot Record
446个bytes:BootLoader,程序
64个节字
16个bytes:标志一个分区
2个字节:Magic Number (魔术数)
标记MBR是否有效
最多4个主分区
主分区 扩展分区 逻辑分区
主分区可以有三个,扩展分区只能有一个
# ls /etc
硬链接 : 相同的inode
软链接(符号链接) (权限是777 权限本质是无意义的,因为另一个文件不一定能访问)
inode 本来 指向的块编号 但软链接是指向另一个文件的路径
大小就是另一个文件的字符个数
ln [ -s -v ] SRC(已存在的) DEST目标路径(未存在的)
剪切 mv 时 其实 文件本身及 inode 号不变,变的只是路径
ln 默认是创建硬链接
-s 创建软链接
-v 显示创建链接过程的信息
硬链接:
1,只能对文件创建,不能应用于目录(因为可能循环引用,目录里的硬链接文件指向自己)
2),不能跨文件系统,因为不同的系统 inode 不共享
3),创建硬链接会增加文件被链接的次数
符号链接:(软链接)
1),可应用于目录
2),可以跨文件系统
3)不会增加被链接文件的链接次数
4)其大小为指向的路径所包含的字符个数
du 每个文件的大小
-s 总大小
-h 显示人类友好的信息
df:报告文件系统磁盘空间使用情况
[root@ebs-22618 backup]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 30831612 2959944 26298856 11% /
tmpfs 960980 524 960456 1% /dev/shm
/dev/vdb1 20510332 16196540 3265268 84% /home