当前位置: 首页 > 面试题库 >

如何在文件的每一行开头添加字符串?

颜实
2023-03-14
问题内容

我有以下bash代码,该代码逐行循环通过文本文件.. im试图为每行添加工作前缀’prefix’,但是却出现此错误:

rob@laptop:~/Desktop$ ./appendToFile.sh stusers.txt kp
stusers.txt
kp
./appendToFile.sh: line 11: /bin/sed: Argument list too long
115000_210org@house.com,passw0rd

这是bash脚本..

#!/bin/bash

file=$1
string=$2

echo "$file"
echo "$string"

for line in `cat $file`
do
    sed -e 's/^/prefix/' $line
    echo "$line"
done < $file

我在这里做错了什么?

更新:从头开始将所有行都转储到终端的一行中,可能相关吗?

rob@laptop:~/Desktop$ head stusers.txt
rob@laptop:~/Desktop$ ouse.com,passw0rd

问题答案:

单行awk命令也可以做到这一点:

awk '{print "prefix" $0}' file


 类似资料:
  • 问题内容: 我有一个文件如下: 我想得到: 我可以编写一个Ruby脚本,但是如果不需要的话更好。 将包含。例如,这是一条路径。 问题答案: 如果包含,则可以使用不在中的任何其他字符,或转义,因此命令变为

  • 问题内容: 如何使用bash在文件的每一行之后添加字符串?可以使用sed命令完成此操作吗? 问题答案: 如果您允许通过参数进行就地编辑: 如果没有,则必须制作一个临时文件:

  • 我有一个文本文件,上面写着: 我想做的是在java列表的顶部添加 我在stackoverflow上遇到了另一个类似的问题,但是,这个答案覆盖了名字。 我现在有的是: 文件图像:http://postimg.org/image/pu043d0kv/

  • 嗨,我有这个同时循环。此输出变量是一个 String 变量,它保留 的输出。 假设< code>br.readLine())给出了2行。 所以将这些行打印为: 有人能告诉我如何在第一行的开头和最后一行的结尾添加吗?像这样: 我通过做这样的事情来尝试这个: 这在每行后面添加了一个括号。 请帮帮我。

  • 问题内容: 我可以使用单独的文件来执行此操作,但是如何在文件的开头添加一行? 由于文件是在追加模式下打开的,因此此操作从文件末尾开始写入。 问题答案: 在模式或中,即使在触发函数的当前时刻,文件的指针也不位于文件的末尾,任何写入都在文件的末尾进行:在进行任何写入之前,指针已移至文件的末尾。您可以通过两种方式来做自己想做的事情。 第一种方式 ,如果没有问题可以将文件加载到内存中,则可以使用: 第二种

  • 我需要一个脚本,添加一个特定的字符到每一行的末尾。我正在使用sed的/$/foo/'r.txt命令 它将foo添加到文件r.txt中每行的末尾并显示在我的终端中。如果我想保存这个现有文件并在每行末尾附加这个新记录,我需要做什么。