编写一个Linux的shell脚本求加注释

编写一个Linux的shell脚本求加注释,第1张

#!/bin/bash

#filename:simple-useradd.sh

##(1)只使用一个参数,其他情况在退出后打印一条提示信息

## 这个要求有点不明确,这是一个根据提示来执行的脚本,正常应该是不用传递参数的。

if [ $# -ne 0 ]

then

    echo "Usage: $0"

    exit 1

fi

##(2)检查/etc/passwd文件,屏幕输出UID的消息

##定义函数DisplayUID

function DisplayUID(){

    cat /etc/passwd

}

##(3)检查/etc/group文件,屏幕输出GID信息

##定义函数DisplayGID

function DisplayGID(){

    cat /etc/passwd

}

##(4)用户从键盘输入信息--新用户的描述、使用shell、UID、GID, 并把这些信息分别添加到/etc/passwd、/etc/group、/etc/shadow中, 创建用户的主目录/home/***---***为用户名

##定义函数InputNewUser

function InputNewUser(){

    echo "---Input new user  Menu"

    read -p "username:" INusername

    read -p "shell:" INshell

    read -p "UID:" INUID

    read -p "GID:" INGID

    echo "开始在/etc/passwd添加帐号信息"

    echo "开始在/etc/group添加帐号信息"

    echo "开始在/etc/shadow添加帐号信息"

    echo "创建用户目录…………"

    useradd -s $INshell -u $INUID -g $INGID -m $INusername   ##useradd用来根据输入,创建新用户

    if [ $? -ne 0 ]  #对添加结果进行判断

    then

        echo "添加用户出错了"

        exit 1

    fi

}

##(5)设置新用户的密码

##定义SetPassWord

function SetPassWord(){

    local INusername

    echo "SetPassWord:"

    read -p "username:" INusername

    passwd $INusername

}

while true  ## 进入菜单循环

do

    cat<<-EOF  ## 打印菜单

        1------------ Display UID

        2------------ Display GID

        3------------ Input new user

        4------------ Set password

        "按Qq退出"

EOF

    read -p "choice:???" choice  #接收用户输入

    case $choice in  # 根据用户选择来执行相应的函数

        1) DisplayUID

        2) DisplayGID

        3) InputNewUser

        4) SetPassWord

        [Qq]) echo "bye "exit 0

    esac

done

这个脚本还有如下问题:

1、”只使用一个参数,其他情况在退出后打印一条提示信息”这个需求不明确,不知道是啥意思,正常情况下,像这种脚本都是不用位置参数的,也可能我不理解题目的意思;

2、脚本还不够严谨,有一些异常没有捕获也没有重定向,不过如果你是交作业的话就问题不大咯。

//和#一样,都是注释只不过是单行注释。

:起始行号,结束行号         /*  ------*/ 这个可以注释几行,中间可以断行,两边是匹配的。

系统:Linux

多行注释:

进入命令行模式-->

将光标移动到要注释的第一行位置-->

按ctrl + v进入 visual block模式-->

按字母j或k(或者上下移动键)纵向选中需要注释的行-->

按大写字母I,进入插入模式-->

输入注释符号,例如##(需要添加几列就输入几个)-->

按esc键就注释多行了。

取消多行注释(删除注释):进入命令行模式-->

将光标移动到要取消注释的第一行第一列位置-->

按ctrl + v进入 visual block模式-->

按小写字母h或l横向选中列的个数,按小写字母j或k纵向选中行的个数(同样可以使用上下左右移动键)-->按d键或者delete键就可多行取消注释。

扩展资料:

linux在vim下怎么批量替换或者注释:

:%s/foo/bar/g

把全部foo替换为bar,全局替换

:s/foo/bar/g

当前行替换foo为bar

:%s/foo/bar/gc

替换每个foo为bar,但需要确认.

:%s/\/bar/gc

单词匹配替换, 需确认

%s/foo/bar/gci

忽略foo大小写,替换为bar, 需确认


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8401001.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-16
下一篇2023-04-16

发表评论

登录后才能评论

评论列表(0条)

    保存