假设您打开两个目录,并通过ls -Q和进行搜索grep
$ mkdir "example 1"
$ mkdir "example 2"
$ ls -Q | grep example | xargs -t nautilus
Run Code Online (Sandbox Code Playgroud)
然后该选项-t显示nautilus example 1 example 2不带引号。但是,文件夹可以正确打开。
$ ls -Q | grep example | xargs -t echo
echo example 1 example 2
example 1 example 2
Run Code Online (Sandbox Code Playgroud)
为了完整起见,让我展示以下输入xargs:
$ ls -Q | grep example
"example 1"
"example 2"
Run Code Online (Sandbox Code Playgroud)
所以那里的引号...
这里发生了什么?引号去哪儿了?
xargs认为引号和反斜杠是特殊的。如果您希望它发出引号,您需要转义这些引号。将输出grep传递sed给以转义引号:
$ ls -Q | grep example | sed 's/"/\\"/g' | xargs echo
"example 1" "example 2"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3416 次 |
| 最近记录: |