位置: IT常识 - 正文
推荐整理分享mapfile命令 从标准输入读取行并赋值到数组(map获取entry),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:map format,map format,从map中取数据,mapfiles,从map中取数据,map file name,map file name,map file name,内容如对您有帮助,希望把文章链接给更多的朋友!
mapfile命令用于从标准输入或文件描述符读取行并赋值到数组
语法格式: mapfile [参数]
常用参数:
-n count从标准输入中获取最多count行,如果count为零那么获取全部-O origin从数组下标为origin的位置开始赋值,默认的下标为0-s count跳过对前count行的读取参考实例
先创建一个示例用的文件alpha.log,每行一个小写字母,共26行:
[root@linuxcool ~]# echo {a..z} | tr " " "\n" >alpha.log[root@linuxcool ~]# cat alpha.logabcdefghijklmnopqrstuvwxyz读取alpha.log文件并将每一行存储到数组myarr中(如果不指定,则存储到默认的MAPFILE数组中):
[root@linuxcool ~]# mapfile myarr <alpha.log[root@linuxcool ~]# echo ${myarr[@]}a b c d e f g h i j k l m n o p q r s t u v w x y z[root@linuxcool ~]# echo ${myarr[2]}c从标准输入中获取最多6行数据:
[root@linuxcool ~]# mapfile -n 6 myarr <alpha.log[root@linuxcool ~]# echo ${myarr[2]}c[root@linuxcool ~]# echo ${myarr[@]}a b c d e f从数组下标为6的位置开始赋值:
[root@linuxcool ~]# mapfile -O 6 myarr <alpha.log[root@linuxcool ~]# echo ${myarr[@]}g h i j k l a b c d e f g h i j k l m n o p q r s t u v w x y z跳过对前6行的读取:
[root@linuxcool ~]# mapfile -s 6 myarr <alpha.log[root@linuxcool ~]# echo ${myarr[@]}g h i j k l m n o p q r s t u v w x y z与该功能相关的Linux命令:tzselect命令 查看设置时区lsmod命令 显示已加载模块状态tune2fs命令 管理文件系统参数depmod命令 生成模块映射文件ps命令 显示进程状态lsof命令 查看文件的进程信息sh命令 shell命令语言解释器taskset命令 绑定进程与CPU核心help命令 显示帮助信息reboot命令 重新启动计算机上一篇:ip6tables-restore命令 还原ip6tables表
下一篇:compgen命令 列出所有Linux命令(chage -l命令)
友情链接: 武汉网站建设