Я написал этот быстрый скрипт:
#!/bin/bash
ssh "$1" "nc -l 2020 > \"$2\" &"
pv "$2" | nc "$1" 2020
требуется два ARGS, хост, чтобы отправить его и файл, который вы отправляете Отказ Это работает только для одного файла. Он использует SSH для начала NetCat
, прослушивающую на противоположном конце, а затем использует NetCat
, чтобы отправить его в этот порт прослушивания. Я добавил PV
до начала, чтобы дать хороший прогресс. Заменить PV
с CAT
Если у вас нет или хотите этого. Измените порт 2020 к тому, что вам нравится. Это требует, чтобы вы имели доступ SSH к удаленной системе.
Это совершенно небезопасно, но тогда это то, что вы хотели.
Вы можете обрабатывать содержимое файла построчно, используя bash
в то время как
цикл:
i=1
while IFS= read -a line; do
printf "Line number %d:\n" $i
printf "%s\n" "${line[@]}"
let i++
done < "file.txt"
Каждая строка хранится в массиве line
, каждый элемент массива line
можно получить синтаксисом:
echo "${line[n]}"
где n
- это порядок элементов в массиве.
И командой awk
$ awk '/^Report|^-----|^Name/ {next}{for (i=2;i<=NF;i++){print $i}}' file
val1
val2
val3
val4
val5
val6
val7
val8
val9
val10
val11
val12
она пропускает строку, начинающуюся с Report,---,Name
и печатает все значения из второго столбца в конец для каждой строки. Значения выводятся в новой строке.