xargs不会在命令参数中使用回车文字

时间:2017-01-19 11:40:17

标签: bash xargs

考虑以下grep命令,该命令旨在匹配变量source_files中列出的文件中的crlf行结尾。

# In reality the variable "source_files" is constructed dynamically
source_files="/foo/bar.txt"
files_with_lf=$(echo "$source_files" | xargs -t -0 grep -Ua '\([^'$'\r'']\|^\)$')

这将打印:

grep -Ua \([^]\|^\)$ /foo/bar

grep: Unmatched [, [^, [:, [., or [=

似乎\r字面值未正确传递。我怎样才能确定它呢?

为了记录,我正在使用

$ bash --version
GNU bash, version 4.3.42(5)-release (x86_64-pc-msys)
Copyright (C) 2013 Free Software Foundation, Inc.

0 个答案:

没有答案