Подключите NAS через терминал

Используйте это вместо:

awk -F, '{print FNR}' file1 file2

Переменная FNR в awk дает количество записей для каждого входного файла. Но, когда вы используете cat ... | awk awk читает для дескриптора файла stdin, поэтому awk видит только 1 "файл".

Попробуйте сделать это, чтобы лучше понять (FILENAME содержит текущий обрабатываемый файл):

$ awk -F, '{print FILENAME" "FNR}' file1 file2
file1 1
file1 2
file1 3
file2 1
file2 2
file2 3
file2 4
$ cat file1 file2 | awk -F, '{print FILENAME" "FNR}'
- 1
- 2
- 3
- 4
- 5
- 6
- 7

Как вы можете видеть в первом примере, обрабатывается 2 файла, во втором примере FILENAME - -, что указывает на стандартный ввод.

Изменить: См. следующий пример:

$ cat file1 | awk -F, '{print FILENAME" "FNR}' - file1 <(cat file1)
- 1
- 2
- 3
file1 1
file1 2
file1 3
/dev/fd/63 1
/dev/fd/63 2
/dev/fd/63 3

Сначала awk читает из stdin (часть cat file1, также являющаяся параметром - для awk). Затем обычный file1. Наконец, часть <(cat file1), которая создает трубу (/dev/fd/63), откуда awk читает.

0
09.02.2018, 14:52
1 ответ

No, los recursos compartidos (s )exportados por su NAS incluyen un nombre (que puede no ser el nombre del directorio real sino un alias ). Lo necesita para identificar el recurso compartido.

1
28.01.2020, 02:43

Теги

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