我可以将变量附加到 tail 命令吗?

我可以将变量附加到 tail 命令吗?

这可能吗?如果不可能,我可以做更好的事情吗?

例子:

日志条目数:3

log=$(home/admin17/folder/data_log)
read -p "Number of log entries" num
cat $log | tail -n $num

答案1

var=$(command)符号运行command并将其输出分配给var。由于home/admin17/folder/data_log是一个文件而不是命令,因此应该会出现错误:

log=$(home/admin17/folder/data_log)
bash: home/admin17/folder/data_log: command not found

如果要将文件名保存为变量,则需要:

log=home/admin17/folder/data_log

然后,其余部分应该按您的预期工作:

log=home/admin17/folder/data_log
read -p "Number of log entries" num
cat $log | tail -n $num

或者,避免无用地使用 Cat (UUoC):

log=home/admin17/folder/data_log
read -p "Number of log entries: " num
tail -n "$num" "$log"

相关内容