写shell,输入参数为文件名,输出内容为通过循环显示文件中的每一行内容

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了写shell,输入参数为文件名,输出内容为通过循环显示文件中的每一行内容相关的知识,希望对你有一定的参考价值。

filename=$1什么意思啊?程序执行不了啊

#!/bin/bash
filename=$1
while read line
do
   echo "$line"
done <$filename

这个绝对符合你的要求。

将以上代码存为脚本文件showFile.sh

赋予脚本可执行权限:chmod +x showFile.sh

执行脚本:./showFile.sh file.txt

参考技术A 直接cat不就得了,为什么一定要循环?追问

那用cat给我写一个呗,我是小白,详细点

追答

cat file.txt
这样就直接将文件内容显示出来了

不知道你循环显示是什么意思,如果有特殊要求,请明确说明,举个例子

shell中awk问题:我想循环输出一个txt文件中第10列到第25列的内容

我想循环输出一个txt文件中第10列到第25列的内容,awk怎么写?
我这样写的:
k=10
while [$k -le 25]
do
cat txt.txt|awk 'print $k '>sample.txt
......something else
done
测试发现程序中awk没有执行,如果想输出第十列那么就是awk‘print $10’ 可是现在列是个变量了,应该怎么写?我尝试了awk‘print$[$K]’是不对的,求助啊~~~~

cat txt.txt|awk -v line=$k 'print $line '>sample.txt
awk 支持从shell中传参数。
参考技术A cat txt|cut -f10-25

工具是用来解决问题的,你却非要拿螺丝刀当锤子使....
参考技术B 什么东东,任务而已

以上是关于写shell,输入参数为文件名,输出内容为通过循环显示文件中的每一行内容的主要内容,如果未能解决你的问题,请参考以下文章

shell 循环

Shell篇之八 输入输出重定向

shell中awk问题:我想循环输出一个txt文件中第10列到第25列的内容

json内容,该如何循环输出(JS)

Linux--shell中获取字符串长度的常用方法

linux之Shell编程--Shell参数传递实例演示