Shell ifs 用法
Shell 脚本中有个变量叫IFS(Internal Field Seprator) ,内部域分隔符。
案例1
新建文件domains.txt
读取
#!/bin/bash
# setupapachevhost.sh - Apache webhosting automation demo script
file=/tmp/domains.txt# set the Internal Field Separator to |
IFS='|'
while read -r domain ip webroot ftpusername
doprintf "*** Adding %s to httpd.conf...\n" $domainprintf "Setting virtual host using %s ip...\n" $ipprintf "DocumentRoot is set to %s\n" $webrootprintf "Adding ftp access for %s using %s ftp account...\n\n" $domain $ftpusernamedone < "$file"
执行
案例2
IFS 在 "$@" And "$*" 上的应用
- $@ and $* 是特殊的命令行参数
- The $@ 保存了所有传给脚本的参数
- The $* 保存了所有传给脚本的参数
- 两者区别在哪里呢?
#!/bin/bash
# ifsargs.sh - Cmd args - positional parameter demo
echo "Command-Line Arguments Demo"
echo "*** All args displayed using \$@ positional parameter ***"
echo $@
echo "*** All args displayed using \$* positional parameter ***"
echo $*
执行
chmod +x ifsargs.sh
./ifsargs.sh honda yamaha harley-davidson kawasaki
结果
看起来一样,再看
#!/bin/bash
# ifsargs2.sh - Cmd args - positional parameter demo#### Set the IFS to | ####
IFS='|'echo "Command-Line Arguments Demo"echo "*** All args displayed using \$@ positional parameter ***"
echo "$@" #*** double quote added ***#echo "*** All args displayed using \$* positional parameter ***"
echo "$*" #*** double quote added ***#
执行
chmod +x ifsargs2.sh
./ifsargs2.sh honda yamaha harley-davidson kawasaki
结果
- $@ expanded as "$1" "$2" "$3" ... "$n"
- $* expanded as "$1y$2y$3y...$n", where y is the value of IFS variable i.e. "$*" is one long string and $IFS act as an separator or token delimiters.
参考:
https://bash.cyberciti.biz/guide/$IFS
Shell ifs 用法相关推荐
- shell实例第22讲:shell中分隔符IFS用法
shell中分隔符IFS用法 1.什么是IFS? IFS在shell中是分隔符的意思,即IFS这个变量中存放了分隔符. 2.IFS是全局变量还是局部变量? (1)linux中变量分两种:全局变量env ...
- linux shell ifs,【shell】IFS和$*变量
Shell脚本中有个变量叫 IFS(Internal Field Seprator),内部域分隔符. 完整定义: The shell uses the value stored in IFS, whi ...
- cut最后几位 shell_详解Shell cut用法
详解Shell cut用法 cut是以每一行为一个处理对象的,这种机制和sed一样. cut接受三个定位方法: 1)byte: -b 2)characters: -c 3)fields: -d eg: ...
- linux shell ifs,Shell 的 IFS 变量
今天把一个 shell script 从 Linux 移植到 Solaris 时遇到一些小问题: args=`tail -n 1 $file | head -1` tail 的用法有点不一样.Sola ...
- 常见Shell命令用法总结
2019独角兽企业重金招聘Python工程师标准>>> 常见命令用法总结 ----- 目录: --- 关于grep的总结 关于egrep的总结 关于tr的总结 关于so ...
- linux shell IFS分隔符 简介 IFS=$‘\n‘ 使用换行符做分隔符
IFS是internal field separator的缩写,shell的特殊环境变量.ksh根据IFS存储的值,可以是空格.tab.换行符或者其他自定义符号,来解析输入和输出的变量值. 用IFS定 ...
- [shell]shell 中| || () {} 用法以及shell的逻辑与或非
转自:https://www.jianshu.com/p/617c1ee1e46e | 运算符 管道符号,是unix一个很强大的功能,符号为一条竖线:"|". 用法: comman ...
- 详解shell IFS分隔符
文章目录 一.概念 二.查看IFS的值 三.修改IFS值 `3.1.未修改IFS值的情况` `3.2.修改IFS值为:后的情况` 四.还原IFS值 参考书籍:<Linux Shell核心编程指南 ...
- linux shell ifs,shell - IFS分隔符
IFS是internal field separator的缩写,shell的特殊环境变量.ksh根据IFS存储的值,可以是空格.tab.换行符或者其他自定义符号,来解析输入和输出的变量值. 用IFS定 ...
最新文章
- dotnet core Linux下图片验证码解决方案
- Log Cauchy分布的一个Hierarchical模型:LC=Gamma+Gamma+Unif
- Flexbox 最简单的表单
- python下载图片到文件夹_请教大佬:下载图片,运行后文件夹创立了,但里边没有图,为什么...
- concurre分段锁 put 流程图_一道有趣的笔试题(三)、锁存器Latch
- 拓端tecdat|如何利用深度学习诊断心脏病
- Oracle数据库常用sql语句
- Android物联网应用程序开发(智慧城市)—— 购物信息的存储界面开发
- VB语言写CRC16校验
- Flutter 本地小说阅读器
- PDF虚拟打印机怎么保存文件
- Java之打印指定月份日历
- pc登录2个微信客户端
- 利用Jmeter进行压力测试(基础版)
- 移动端自适应方案(转载)
- 前端数字转为中文大写
- 回望来时的路:构建之法东北师大站 2016春季学期
- 事情永远都没有想象中那么好
- RabbitMQ--扩展--11--均衡负载
- 笔记本电脑C盘变红或变满,怎么处理?
热门文章
- JAVA通过poi实现excel表格制作并且将图片放入到指定的单元格中(可以循环插入)
- idea 右侧的maven没有dependencies
- blender使用小技巧
- 基于Arduino Uno开发板的红外遥控开发
- 2021年中国全自动棉纱缠绕机市场趋势报告、技术动态创新及2027年市场预测
- 快速上手Linux核心命令(九):文件备份与压缩
- 用U盘装win10计算机重启,u盘安装win10系统教程_硬盘安装win10系统图文教程 - 系统之家...
- Linux文件目录颜色的含义
- solr整合paoding分词注意的一些细节
- Idea使用系统应用打开md文件