当前位置: 技术问答>linux和unix
linux shell编程中有关set命令的几句程序,求高手给解释下
来源: 互联网 发布时间:2017-01-11
本文导语: 这两句程序是《linux程序设计》中文版第四版,74页中count_cds函数中的几句程序 set $(wc -l $title_file) num_titles=$1 set $(wc -l $tracks_file) num_tracks=$1 我想知道,1:set命令在这两句中的作用是什么,wc命令是返回...
这两句程序是《linux程序设计》中文版第四版,74页中count_cds函数中的几句程序
set $(wc -l $title_file)
num_titles=$1
set $(wc -l $tracks_file)
num_tracks=$1
我想知道,1:set命令在这两句中的作用是什么,wc命令是返回文件中的行数,然后用set设置下是什么意思啊。
2:如果说set命令是设置当前shell的参数变量的话,然后$1是第一个设置的参数变量,可是为什么最后一句 num_tracks=$1,不是应该用$2来给其赋值吗?
还望有高人能帮忙给解释下,谢谢了
set $(wc -l $title_file)
num_titles=$1
set $(wc -l $tracks_file)
num_tracks=$1
我想知道,1:set命令在这两句中的作用是什么,wc命令是返回文件中的行数,然后用set设置下是什么意思啊。
2:如果说set命令是设置当前shell的参数变量的话,然后$1是第一个设置的参数变量,可是为什么最后一句 num_tracks=$1,不是应该用$2来给其赋值吗?
还望有高人能帮忙给解释下,谢谢了
|
set $(wc -l $title_file) //这里的$(wc -l $title_file)就是$1
num_titles=$1
set $(wc -l $tracks_file) //这里的$(wc -l $tracks_file)也是$1,重新赋值
num_tracks=$1
$(wc -l $title_file)是求出$title_file这个文件的行数,$title_file只是个变量
set 是用来给$1赋值用的
num_titles=$1
set $(wc -l $tracks_file) //这里的$(wc -l $tracks_file)也是$1,重新赋值
num_tracks=$1
$(wc -l $title_file)是求出$title_file这个文件的行数,$title_file只是个变量
set 是用来给$1赋值用的
|
set x1 x2 x3 就是给$1,$2,$2赋值。
然后你就懂了。
然后你就懂了。
|
是啊.
|
When options are specified, they set or unset shell attributes.
Any arguments remaining after option processing are treated as values for the positional parameters and are assigned, in order, to $1, $2, ... $n.
Any arguments remaining after option processing are treated as values for the positional parameters and are assigned, in order, to $1, $2, ... $n.