Передать командную строку в xargs

grep -vf dict.txt transcript.txt
    and
    <silence>
    for
    breakfast

arreglar

La solución anterior trata el contenido del archivo como patrones. Eso funciona en este ejemplo, pero no en general. Para hacer coincidir las líneas completas, literalmente, necesita:

grep -vFxf dict.txt transcript.txt
0
15.07.2019, 10:18
1 ответ

Вместо того, чтобы выполнять команду для каждой строки CSV-файла, может быть проще воспользоваться функцией curls с несколькими URL-адресами.

You can specify multiple URLs or parts of URLs by writing part sets within braces as in: http://site.{one,two,three}.com

Я не уверен, как выглядит ваш CSV-файл, кажется, что все в одной строке? Если это так, вы можете просто catфайл и объединить с командой curl.

curl "https://token-api/{$(cat users.csv)}"

Все еще нужно немного почистить.

curl "https://token-api/{$(cat users.csv)}" 2>/dev/null | sed '1d;s/--_curl_--.*$//'; echo

Команда sedудаляет первую строку, поскольку это будет просто первый URL-адрес, а затем удаляет остальные URL-адреса, оставляя полезную новую строку между записями. Наконец, просто echo, чтобы заканчиваться новой строкой.

1
28.01.2020, 02:39

Теги

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