Сценарий для записи в начале каждой строки текстового файла имени файла

Я хотел бы записать сценарий оболочки, который позволяет мне открыть текстовый файл с конкретным именем и написать имя файла в начале каждой строки. Так, если мой файл называют "тестом", и он имеет три строки:

SCORE1 567
SCORE2 434
SCORE3 789 

сценарий открыл бы его и изменил бы его на это:

test SCORE1 567 
test SCORE2 434
test SCORE3 789 

Затем это должно сохранить его перезаписывающий исходный файл.

Идеально, сценарий выполнил бы эту модификацию во все файлы в конкретной папке, написав в каждом имя того конкретного файла в каждой строке.

После того как этот процесс сделан, я подам эти файлы к другому сценарию, который объединит их в единственном, который будет позже проанализирован с электронной таблицей.

Вы могли помочь мне с этим? У меня есть некоторые идеи, но я хотел бы считать Ваш. У меня почти нет опыта при записи сценариев оболочки.

2
задан 18 February 2015 в 19:43

1 ответ

Можно использовать следующий сценарий,

#!/bin/bash
awk -v var="$1" '{print var" "$0 }' "$1" > /tmp/temp.txt
mv /tmp/temp.txt "$1"

Дайте разрешение выполнения сценария, как chmod +x scriptname

Запустите скрипт как,

./scriptname test

принятие "теста" является файлом, который Вы собираетесь изменить, и Вы запускаете скрипт от той же папки, где файл "тест" расположен.

1
ответ дан 2 December 2019 в 05:08

Другие вопросы по тегам:

Похожие вопросы: