我想创建一个名为“Grocery List”的文件(该文件名中有 2 个单词)

我想创建一个名为“Grocery List”的文件(该文件名中有 2 个单词)

我知道我们可以使用

cat > fire

创建一个名为“fire”的文件。但是,如果文件名包含“Grocery list”这样的 2 个单词,该如何制作呢?

自从

cat > Grocery list

给出了奇怪的消息cat: list: No such file or directory

请帮帮我。

答案1

很多方法:

  • 在名称周围使用单引号:

    cat > 'Grocery list'
    
  • 在名称周围使用双引号:

    cat > "Grocery list"
    
  • 使用以下命令转义空白\

    cat > Grocery\ list
    

当你这样做时:

cat > Grocery list

Grocerylist被视为两个词。

输出方向> Grocery由 shell 完成,它首先发生,因此文件Grocery被创建,然后cat list运行 ​​ielist作为参数cat,因为大概当前目录中不存在文件,因此出现丢失文件list的错误list

所以,在这种情况下,本质上你正在做:

cat list > Grocery

答案2

你需要以某种方式逃离这个空间。 heemayl 给了你一个很好的答案,但我建议你也阅读这个答案以了解详细信息:为什么我的 shell 脚本会因为空格或其他特殊字符而卡住?

至于创建文件本身,您不需要使用cat.

> file

足够。

相关内容