这些天。我正在学习 shell 脚本的乐趣。当我阅读手册的示例时,如:
set $(wc -l $title_file)
num_titles=$1
set $(wc -l $tracks_file)
num_tracks=$1
我有一个简单的理解,即命令、设置、指定 $1 并将 $1 的值设置为 num_titles。 但是,我不知道为什么要使用 -l 作为命令 set 的选项。顺便说一下,有人能解释一下它的整个故事吗?thx
最佳答案
首先set
设置一个环境变量。
根据其联机帮助页使用语法 set var = value
或 set var [n] = word
来查看联机帮助页类型 man set
。
在这种情况下,set 使用第二种语法生成 $1 = $(wc -1 $titlefile)
,然后根据使用的语法将 num_titles 设置为 $1 作为常规变量。
wc
是wordcount命令,显示文件中的行数、字符数和单词数。
wc -l
告诉 wc 根据 wc 联机帮助页按行计数,查看联机帮助页类型 man wc
。
参见 Linux Shell Scripting Tutorial A Beginner's handbook和 Advanced Bash-Scripting Guide以供进一步引用。
关于linux - set $(wc -l $title_file) 在 shell 中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9613502/