Python 练习Linux Shell脚本

Python 练习Linux Shell脚本,python,linux,bash,shell,Python,Linux,Bash,Shell,我的家庭作业是写一个shell脚本来读取“log.txt”并逐行显示它的注释。每一行都应以行号作为前缀 到目前为止,我的剧本是: path="/home/user/log.txt" while i=read -r line do echo "$line" done < "$log_file" 预期产出: 1. How are you 2. Where are you 考虑添加一个计数器,在每一行上增加它,并用每一行打印计数器 另请注意,修复了设置日志文件、更新为读取命令的问题 l

我的家庭作业是写一个shell脚本来读取“log.txt”并逐行显示它的注释。每一行都应以行号作为前缀

到目前为止,我的剧本是:

path="/home/user/log.txt"
while i=read -r line
do
   echo "$line"
done < "$log_file"
预期产出:

1. How are you
2. Where are you

考虑添加一个计数器,在每一行上增加它,并用每一行打印计数器

另请注意,修复了设置日志文件、更新为读取命令的问题

log_file="/home/user/log.txt"
line_no=0
while read -r line
do
   line_no=$((line_no+1))
   printf "%d. %s\n" $line_no "$line"
done < "$log_file"
log_file=“/home/user/log.txt”
行号=0
而read-r行
做
行号=$((行号+1))
printf“%d.%s\n”$line\u no“$line”
完成<“$log\u文件”

一个可供选择的方法是调用<代码> NL< /Cult>实用工具,它执行精确的任务。

在Python3.8中,这是有效的

count=0
打开(“log.txt”)作为文件
行=[]
对于文件中的行,请参见:
行。追加(行)
打印(“{}{}”。格式(计数,行))
计数+=1


不是shellscript,但某些实用程序/程序可以做到这一点

grep -n . logfile.txt

cat -n logfile.txt

awk '{print NR" "$0}' logfile.txt
还有更多

下面是一个使用bash的示例

#!/usr/bin/env bash

n=0

while IFS= read -r line; do
  printf '%d. %s\n' "$n" "$line"
  ((n++))
done < logfile.txt
#/usr/bin/env bash
n=0
而IFS=读取-r行;做
打印文件“%d.%”s\n“$n”“$line”
((n++)
完成
#!/usr/bin/env bash

n=0

while IFS= read -r line; do
  printf '%d. %s\n' "$n" "$line"
  ((n++))
done < logfile.txt