如何从终端窗口在 Linux 中创建文件? [关闭]

Posted

技术标签:

【中文标题】如何从终端窗口在 Linux 中创建文件? [关闭]【英文标题】:How to create a file in Linux from terminal window? [closed] 【发布时间】:2012-03-11 23:51:09 【问题描述】:

在 Linux 终端中创建文件最简单的方法是什么?

【问题讨论】:

$>newfile也可以创建文件。 【参考方案1】:

最简单快捷的方法之一

$ vim filename

【讨论】:

【参考方案2】:

使用 install 创建一个具有所有权和权限的空白文件。

sudo install -v -oUSER -gGROUP -m640 /dev/null newFile.txt

【讨论】:

sudo 在许多情况下都很有用,但不是直接回答 OP 问题的一部分。 如果您不是需要该文件的用户名,则需要该用户名拥有或不是该组的成员。 是的,有类似的情况,但严格来说不是 OP 要求的。【参考方案3】:
touch filename

对于permission denied 错误使用sudo 命令为:

sudo touch filename

【讨论】:

【参考方案4】:

这将创建一个带有当前时间戳的空文件

touch filename

【讨论】:

【参考方案5】:

就这么简单:

> filename

【讨论】:

【参考方案6】:

第一种方法

echo -n > filename.txt

第二种方法

> filename.txt

第三种方法

touch filename.txt

查看文件内容

vi filename.txt

【讨论】:

2 方法是 type-> "> filename.txt" 该问题与 help center 中定义的 Stack Overflow 无关。请不要回答此类问题;相反,您应该标记它们以引起注意,它们将被适当地关闭或迁移。【参考方案7】:

如何在 Linux 上创建文本文件:

使用touch创建一个文本文件:$ touch NewFile.txt 使用cat创建新文件:$ cat NewFile.txt 该文件已创建,但它是空的,仍在等待用户的输入。您可以在终端中输入任何文本,一旦完成,CTRL-D 将关闭它,或者 CTRL-C 将您退出。 只需使用> 创建一个文本文件:$ > NewFile.txt 最后,我们可以使用任何文本编辑器名称,然后创建文件,例如:nano MyNewFile vi MyNewFile NameOfTheEditor NewFileName

【讨论】:

【参考方案8】:

您可以使用touch 命令,正如其他人所说:

touch filename

要在命令行上写入文件,可以使用echoprintf

echo "Foo" > filename
printf "Foo" > filename

也许您可能会遇到权限问题。如果您收到以下错误:bash: filename: Permission denied,您需要使用sudo bash -c 'echo "Foo" > filename',如下所述: https://askubuntu.com/questions/103643/cannot-echo-hello-x-txt-even-with-sudo

【讨论】:

【参考方案9】:

我喜欢nano 命令行编辑器(文本):

nano filename

【讨论】:

【参考方案10】:

如果你们试图创建一个新文件,但它显示:'File does not exist',这仅仅是因为您还在访问一个尚不存在的目录。您必须先使用mkdir /path/to/dir 命令创建所有不存在的目录。

【讨论】:

【参考方案11】:

使用cat创建文件

$ cat > myfile.txt

现在,只需在文件中输入您想要的任何内容:

Hello World!

CTRL-D 保存退出

【讨论】:

我更喜欢使用 cat,因为它提供了一种简单方便的方式来立即编辑文件。 您也可以不输入任何内容。 当我尝试cat /etc/systemd/system/sample.service 时,它说“没有这样的文件或目录”,而不是创建一个新的 sample.service 文件。 @TylerH cat /etc/systemd/system/sample.service 将文件打印到控制台 cat > /etc/systemd/system/sample.service 将标准输入重定向到文件(这就是为什么您需要通过按 control-d 来关闭标准输入。 很好的答案!!!快速简单。谢谢!!【参考方案12】:

取决于您希望文件包含的内容:

touch /path/to/file 用于空文件

somecommand > /path/to/file 用于包含某些命令输出的文件。

  eg: grep --help > randomtext.txt
      echo "This is some text" > randomtext.txt

nano /path/to/filevi /path/to/file(或 any other editor emacs,gedit etc) 它要么打开现有文件进行编辑,要么创建并打开空文件以输入(如果它不存在)

【讨论】:

还有,printf "some long message\nwith newlines\n" > file。祝大家好运。 UNIX 不是命令行环境,而是一系列(非常不同的)操作系统。也就是说:是的,这应该适用于大多数 Unices touch 可以在 UNIX 中工作,因为它是一个标准工具。 somecommand 示例将起作用,因为它使用标准语法。 nano 示例可能无法工作,因为可能未安装名为 nano 的编辑器(nano 未标准化)。标准编辑器是ed,可以用来代替nano,或者您可以使用$EDITOR 来使用用户或系统配置的默认文本编辑器(如果有的话)。 此外,您可以简单地说>/path/to/file 来创建一个空文件,即使您没有touch @EugenRieck 如果说权限被拒绝怎么办【参考方案13】:

有几种可能的解决方案:

创建一个空文件

touch file

>file

echo -n > file

printf '' > file

只有当您的echo 版本支持-n 开关以抑制换行时,echo 版本才有效。这是一个非标准的添加。其他示例都将在 POSIX shell 中运行。

创建一个包含换行符的文件

echo '' > file

printf '\n' > file

这是一个有效的“文本文件”,因为它以换行符结尾。

将文本写入文件

"$EDITOR" file

echo 'text' > file

cat > file <<END \
text
END

printf 'text\n' > file

这些是等价的。 $EDITOR 命令假定您在 EDITOR 环境变量中定义了一个交互式文本编辑器,并且您以交互方式输入等效文本。 cat 版本假定在 \ 和其他行之后有一个文字换行符。除此之外,这些都将在 POSIX shell 中工作。

当然还有很多其他的编写和创建文件的方法。

【讨论】:

【参考方案14】:

您可以使用touch 命令创建一个新的空文件。

http://linux.about.com/library/cmd/blcmdl_touch.htm

【讨论】:

【参考方案15】:

使用touch

touch filename

【讨论】:

【参考方案16】:

哈哈!这很容易!试试这个:

$ touch filename

【讨论】:

这适用于 sudo,所以我能够在系统文件夹中创建新文件。【参考方案17】:

另外,创建一个空文件:

touch myfile.txt

【讨论】:

以上是关于如何从终端窗口在 Linux 中创建文件? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Linux Ubuntu 中创建 .sh 扩展名文件? [关闭]

为啥要执行权限以及在 c(Linux) 中创建文件所需的写权限? [关闭]

如何重新打开在 OS X 的故事板中创建的关闭窗口

如何在 Python 函数中创建简单的 PyQt 弹出窗口并在其末尾关闭?

debian linux如何进入终端

在 Linux 中创建可执行文件