如何从包含空格的列表创建文件

如何从包含空格的列表创建文件

我想从以下列表中创建文件。

如果列表没有空格没有问题...但问题是它有空格

user@linux:~$ cat file.txt 
Apples
Bing Cherry
Crab Apples
Dragon Fruit
user@linux:~$ 

ser@pc:~$ ls -l
total 4
-rw-r--r-- 1 user user 44 Jun   9 14:06 file.txt
user@linux:~$ 

xargs触摸

user@linux:~$ cat file.txt | xargs touch 
user@linux:~$ 

Apples, Bing Cherry, Crab Apples, Dragon Fruit该命令不是创建,而是生成这些输出。

user@linux:~$ ls -l
total 4
-rw-r--r-- 1 user user  0 Jun   9 14:11 Apples
-rw-r--r-- 1 user user  0 Jun   9 14:11 Bing
-rw-r--r-- 1 user user  0 Jun   9 14:11 Cherry
-rw-r--r-- 1 user user  0 Jun   9 14:11 Crab
-rw-r--r-- 1 user user  0 Jun   9 14:11 Dragon
-rw-r--r-- 1 user user 44 Jun   9 14:06 file.txt
-rw-r--r-- 1 user user  0 Jun   9 14:11 Fruit
user@linux:~$ 

在这种情况下我应该怎么处理空间?

答案1

使用 的 GNU 实现,您可以使用/选项xargs指定换行符作为分隔符:-d--delimiter

xargs --no-run-if-empty --delimiter='\n' --arg-file=file.txt touch --

带有简短的选项:

xargs -r -d '\n' -a file.txt touch --

相关内容