shell使用特殊变量

3.1问题

本例要求编写一个脚本/root/myuseradd,功能特性如下:

1)此脚本可接收2个位置参数,能够按照下列格式执行:

/root/myuseradd用户名密码

2)此脚本执行后,能显示“一共提供了$#个参数”,然后在下一行显示“用户名是$1,密码是$2”,紧跟下一行开始输出对应文件的前几行内容。

3.2方案

使用位置变量可以取得在执行脚本时提供的命令行参数:

表示为$n,n为序号

$1、$2、....${10}、${11}、....

使用预定义变量$#可以统计执行脚本时提供的位置变量个数。

3.3步骤

实现此案例需要按照如下步骤进行。

步骤一:编写/root/myuseradd添加用户的脚本

1)编写脚本代码

[root@server0~]#vim /root/myuseradd

#!/bin/bash

echo "一共提供了$#个参数"

echo "用户名是$1,密码是$2"

useradd$1

Echo "$2" | passwd --stdin $1

2)添加x执行权限

[root@server0~]#chmod +x /root/myuseradd.sh

步骤二:测试/root/myuseradd脚本

1)测试添加用户bob,密码设为1234567

[root@server0~]#/root/myuseradd bob 1234567

一共提供了2个参数

用户名是bob,密码是1234567

更改用户bob的密码。

passwd:所有的身份验证令牌已经成功更新。

[root@server0~]#id bob

uid=1002(bob)gid=1002(bob)组=1002(bob)

2)测试添加用户jerry,密码设为1234567

[root@server0~]#/root/myuseradd jerry 1234567

一共提供了2个参数

用户名是jerry,密码是1234567

更改用户jerry的密码。

passwd:所有的身份验证令牌已经成功更新。

[root@server0~]#id jerry

uid=1003(jerry)gid=1003(jerry)组=1003(jerry)

shell使用特殊变量的更多相关文章

  1. Shell基础-环境变量配置文件

    Shell基础-环境变量配置文件 source 配置文件 或者 . 配置文件: 把环境变量写入配置文件后,需要用户重新登陆才能生效,而是用source命令,则能直接生效 主要的配置文件: /etc/p ...

  2. Linux —— Shell编程之变量赋值和引用

    Linux的shell编程是一种非常成熟的编程语言,它支持各种类型的变量.有三种主要的变量类型:环境变量.内部变量和用户变量. 环境变量(environment variable)是系统环境的一部分, ...

  3. Linux学习——shell编程之变量

    shell编程之变量:Linux shell编程基础中的变量. 包括Bash变量的分类和各变量的详细使用,如:用户自定义变量.环境变量.语系变量.位置参数变量和预定义变量. 1:什么是Bash变量? ...

  4. shell基础及变量

    一 Shell概述 1.Shell的作用——命令解释器,“翻译官” shell作为一个人机接口,用于解释用户输入的命令,将命令解释为Linux内核可以执行的2进制代码,并将执行的结果返回在标准终端上. ...

  5. Linux编程 11(shell全局环境变量与局变环境变量)

    一.概述 在linux中,很多程序和脚本都通过环境变量来获取系统信息,存储临时数据,配置信息.环境变量是指用来存储有关shell会话和工作环境信息,允许你在内存中存储数据,以便程序或shell中运行的 ...

  6. linux shell脚本之-变量极速入门与进阶(1)

    1,如果创建shell脚本? 使用任意文本编辑软件,一般为vim,创建.sh结尾的文件,在文件的最开头用 #!/bin/bash 注明shell的类型 如: ghostwu@dev:~/linux/s ...

  7. shell中的变量a=100, 什么时候作整数使用, 什么时候作字符串使用呢?

    shell中的变量a=100, 什么时候作整数使用, 什么时候作字符串使用呢? 这确实是一个困扰很久的一个问题? how it can be an issue? 事实上, 在shell中, 你可以认为 ...

  8. awk中使用shell的环境变量

    awk中使用shell的环境变量一:"'$var'"这种写法大家无需改变用'括起awk程序的习惯,是老外常用的写法.如:var="test"awk 'BEGIN ...

  9. Shell 编程 (变量和条件测试)

    变量: 1 . 变量声明 直接使用变量 + 赋值 #!/bin/bash NAME='HELLO WORD' echo $NAME 使用 declare 关键字声明 declare(选项)(参数) + ...

  10. 3.1 shell简介、变量、运算符

    小知识: ipcs可以查看系统中创建的ipc进程间通信资源,例如信号量.共享内存等.示例如下: 什么是shell? shell是核心程序kernel之外的指令解析器,是一个程序,同时是一种命令语言和程 ...

随机推荐

  1. vue 模板 template init

    <template> <div> </div> </template> <script> export default { name: '模 ...

  2. iview-admin里面的 axios 给包装了一层数据 libs/axios.js 数据做了一层拦截

    interceptors (instance, url) { // 请求拦截 instance.interceptors.request.use(config => { // 添加全局的load ...

  3. react 给选中的li添加样式(转载)

    路:使用事件委托,关键:获取到的index必须转为数字,因为它是字符串 handleClick = (e) => { const nodeName = e.target.nodeName.toU ...

  4. 一文了解服务端推送(含JS代码示例)

    常用的服务端推送技术,包括轮询.长轮询.websocket.server-sent-event(SSE) 传统的HTTP请求是由客户端发送一个request,服务端返回对应response,所以当服务 ...

  5. Java-迭代器(新手)

    //导入的包.import java.util.ArrayList;import java.util.Collection;import java.util.Iterator;//创建的一个类.pub ...

  6. 对tf.nn.softmax的理解

    对tf.nn.softmax的理解 转载自律者自由 最后发布于2018-10-31 16:39:40 阅读数 25096  收藏 展开 Softmax的含义:Softmax简单的说就是把一个N*1的向 ...

  7. docker系列详解<二>之常用命令

    此篇我们以从docker运行一个tomcat为例,进行一下操作: 拉取镜像 查看镜像 创建容器 查看运行状态 进入退出容器 停止容器 重启容器 删除容器 删除镜像 1.拉取tomcat镜像: 1).查 ...

  8. List集合概述和特点

    List集合概述 有序集合(也称序列)用户可以精确控制列表的每一个元素的位置插入,用户可以通过整数索引访问元素,并搜索列表中的元素 与set集合不同,列表通常允许重复的元素 List集合的特点 有序: ...

  9. elasticsearch实战(1)-单机快速部署

    1. 场景描述 elasticsearch只用过,没有部署或者维护过,从头完整走一遍,记录下,原创实战,有需要的朋友参考下. 2 . 解决方案 特别说下,以前win7下安装的3台虚拟机,没有联网,因为 ...

  10. 上Github,北大、清华、浙大、中科大4大名校课程在线学,加星总数超1.8万

    [导读]因为大学生找课程资料很麻烦,直到有人把搜集到的资料放在了Github上!现在,你不光都可以自由免费的获取北大.清华.浙大.中科大的相关课程资源进行自学,也可以对资源进行补充. 读过大学的人,对 ...