Запишите имена файлов в файл с помощью команды UNIX - PullRequest
0 голосов
/ 24 сентября 2018

Я работаю над аналогичным сценарием, в котором необходимо вставить список имен файлов в filename.txt из определенного каталога.Это нужно сделать одной командой, так как я хочу использовать эту команду в задании Autosys.Я попробовал приведенный ниже сценарий, но он вставляет имена файлов вместе с каталогом, но я ожидаю, что выходные имена файлов без каталога.Пожалуйста, предложите мне, как поступить с этим.

Список имен файлов: ls /path/file*.csv file1.csv file2.csv file3.csv file4.csv file5.csv

Используемая мной команда: /path/file*.csv > /path/file.txt

Текущий вывод: cat /path/file.txt /path/file1.csv /path/file2.csv /path/file3.csv /path/file4.csv /path/file5.csv

Ожидаемый результат: cat /path/file.txt file1.csv file2.csv file3.csv file4.csv file5.csv

Заранее спасибо.

1 Ответ

0 голосов
/ 24 сентября 2018

Альтернативный дубль:

find /path -name 'file*.csv' -printf '%f\n' > /path/files.txt

Хотя это сойдет в подкаталоги, если они есть.


Без спуска в подкаталоги:

find /path -maxdepth 1 -name 'file*.csv' -printf '%f\n' > /path/files.txt
#          ^^^^^^^^^^^
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...