shell(十三)参数代换

shell参数代换xargs. 产生命令的参数

  1. cut -d ‘:‘ -f 1 /etc/passwd | head -n 3 | xargs finger

  

  2. 执行前询问用户

  cut -d ‘:‘ -f 1 /etc/passwd | head -n 3 | xargs -p finger

  如果直接按回车就退出

  

  3. 指定查阅参数个数

  cut -d ‘:‘ -f 1 /etc/passwd | xargs -p -n 5 finger

  

  4. 指定遇到某字符串就结束

  cut -d ‘:‘ -f 1 /etc/passwd | xargs -p -e‘deamon‘ finger

  

  5. 不支持管道的情景

  xargs对于不支持管道的命令特别有用

  

  下面的命令显示不是想要的结果

  

时间: 2024-08-10 15:22:28

shell(十三)参数代换的相关文章

Linux学习笔记 -- 为 Shell 传递参数

我们可以在执行 Shell 脚本时,可以向脚本传递参数.脚本内获取参数的格式为:$n.(n 代表一个数字,0为所执行的shell脚本名称,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推……) 举例说明 我们先编写一个脚本,名字为test.sh,她的内容如下: #!/bin/bash echo "Shell 输出脚本名称及参数"; echo "执行的脚本名:$0"; echo "第一个参数为:$1"; echo "第二个

Shell 获取参数的方式

写shell脚本的时候,往往需要从外部获取参数,例如: $ sh demo.sh a 那么如何将上面的参数a传到shell程序里面呢. 最常用的是,$0 $1... $10,这些位置变量 其中$0是shell程序的名字,$1,$2...分别为第一个参数,第二个参数... 我们demo.sh 如下所示: $ cat demo.sh #! /bin/bash cat << EOF Usage: sh $0 $1 EOF $ sh demo.sh a Usage: sh demo.sh a $开头的

shell--3、Shell 传递参数

我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推-- 实例 以下实例我们向脚本传递三个参数,并分别输出,其中 $0 为执行的文件名: #!/bin/bash echo "Shell 传递参数实例!"; echo "执行的文件名:$0"; echo "第一个参数为:$1"; echo "第二个参数为:$2"; ec

对于shell脚本参数获取时的一点小技巧

问题如下: 根据脚本参数的个数$#进行一个循环,在依次输出每个参数$1 $2 $3...... 我有一个循环变量i $i 取到这时的i为1,我想使用这个1再去调用$1,也是就是打印出第一个参数 就是$($i)的意思来取到第几个参数,当然$($i)是不好用的 当时纠结了好久,最后上百度提问,两位高手给出了答案: 1) #!/bin/sh NUMBER=$# echo $NUMBER i=1 while [ $i -le $NUMBER ] do a[$i]=$1 #将数组a[i]赋值为$1,即取得

linux shell if 参数

linux shell if 参数 shell 编程中使用到得if语句内判断参数 –b 当file存在并且是块文件时返回真 -c 当file存在并且是字符文件时返回真 -d 当pathname存在并且是一个目录时返回真 -e 当pathname指定的文件或目录存在时返回真 -f 当file存在并且是正规文件时返回真 -g 当由pathname指定的文件或目录存在并且设置了SGID位时返回为真 -h 当file存在并且是符号链接文件时返回真,该选项在一些老系统上无效 -k 当由pathname指定

[Z] shell - 传入参数的处理

参数处理-Shell传入参数的处理1. $# 传递到脚本的参数个数2. $* 以一个单字符串显示所有向脚本传递的参数.与位置变量不同,此选项参数可超过9个3. $$ 脚本运行的当前进程ID号4. $! 后台运行的最后一个进程的进程ID号5. [email protected] 与$#相同,但是使用时加引号,并在引号中返回每个参数6. $- 显示shell使用的当前选项,与set命令功能相同7. $? 显示最后命令的退出状态.0表示没有错误,其他任何值表明有错误.变量 含义 $0 脚本名字 $1

Shell 传递参数

Shell 传递参数 我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推…… 实例 以下实例我们向脚本传递三个参数,并分别输出,其中 $0 为执行的文件名: #!/bin/bash # author:菜鸟教程 # url:www.runoob.com echo "Shell 传递参数实例!"; echo "执行的文件名:$0"; echo "第

[ 转]Shell中参数($0,$1,$#,$NF,[email&#160;protected]等)的含义

Shell中参数($0,$1,$#,$NF,[email protected]等)的含义 发布时间:2018-01-19 来源:网络 上传者:用户 摘要:此处仅仅从来记录平时常用的命令的参数.以免下次忘记时及时找到.也方便更多的人.awk$0表示所有$1表示第一个$NF表示最后一个$(NF-1)表示倒数第二个比如:echo'abcd'|awk'{print$0}'的结果是'abcd'echo'abcd'|awk'{print$1}'的结果是'a'echo'abcd'|awk'{print$NF}

shell传递参数 单双引号区别

shell传递参数 $0 对应的是当前 Shell 脚本程序的名称,$#对应的是总共有几个参数,$*对应的是所有位置的参数值,$?对应的是显示上一次命令的执行返回值,而$1.$2.$3……则分别对应着第 N 个位置的参数值,如图 所示. 举例子说明: 在上面例子中,echo内容在" "(双引号)中,如果 '  '(单引号)中.看下运行结果 其中,被赋值的变量按照脚本内容一模一样打印出来了.对比单引号和双引号可参考博文:linux shell中的单引号与双引号的区别(看完就不会有引号的疑