У меня есть файл, как показано ниже:
line1 line2 line3
И я хочу получить:
prefixline1 prefixline2 prefixline3
Я мог бы написать скрипт на Ruby, но лучше, если мне это не нужно.
prefix будет содержать /. Это путь, например /opt/workdir/.
prefix
/
/opt/workdir/
Вот обобщенный пример с использованием подхода sed из этого ответа :
sed
$ cat /path/to/some/file | prefix_lines "WOW: " WOW: some text WOW: another line WOW: more text
function show_help() { IT=$(CAT <<EOF Usage: PREFIX {FILE} e.g. cat /path/to/file | prefix_lines "WOW: " WOW: some text WOW: another line WOW: more text ) echo "$IT" exit } # Require a prefix if [ -z "$1" ] then show_help fi # Check if input is from stdin or a file FILE=$2 if [ -z "$2" ] then # If no stdin exists if [ -t 0 ]; then show_help fi FILE=/dev/stdin fi # Now prefix the output PREFIX=$1 sed -e "s/^/$PREFIX/" $FILE