如何在终端窗口中在Linux中创建文件?

raf*_*ian 430 linux bash file command-line-interface

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

Eug*_*eck 554

根据您希望文件包含的内容:

  • touch /path/to/file 对于一个空文件
  • somecommand > /path/to/file 对于包含某些命令输出的文件.

      eg: grep --help > randomtext.txt
          echo "This is some text" > randomtext.txt
    
    Run Code Online (Sandbox Code Playgroud)
  • nano /path/to/filevi /path/to/file(或any other editor emacs,gedit etc)
    它打开现有的一个进行编辑,或者创建并打开要输入的空文件(如果它不存在)

  • 还有,'printf'一些长消息\n with newlines \n"> file`.祝你们好运. (43认同)
  • 另外,你可以简单地说`>/path/to/file`来创建一个空文件,即使你没有`touch`. (14认同)
  • `touch`可以在UNIX中运行,因为它是一个标准工具.`somecommand`示例将起作用,因为它使用标准语法."nano"样本可能无法正常工作,因为可能未安装名为"nano"的编辑器(nano未标准化).标准编辑器是`ed`并且可以用来代替`nano`,或者你可以使用`$ EDITOR`来使用你的用户或系统配置的默认文本编辑器(如果有的话). (4认同)
  • @EugenRieck如果说权限被拒绝怎么办? (2认同)

raf*_*ian 87

使用创建文件 cat

$ cat > myfile.txt

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

Hello World!

CTRL-D保存并退出


Sor*_*gal 40

有几种可能的解决方案:

创建一个空文件

touch file

>file

echo -n > file

printf '' > file
Run Code Online (Sandbox Code Playgroud)

echo只有当您的版本echo支持-n切换以禁止换行时,该版本才有效.这是一个非标准的补充.其他示例都将在POSIX shell中运行.

创建一个包含换行符的文件,而不是其他内容

echo '' > file

printf '\n' > file
Run Code Online (Sandbox Code Playgroud)

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

将文本写入文件

"$EDITOR" file

echo 'text' > file

cat > file <<END \
text
END

printf 'text\n' > file
Run Code Online (Sandbox Code Playgroud)

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

当然,还有许多其他编写和创建文件的方法.


and*_*ier 23

另外,创建一个空文件:

touch myfile.txt
Run Code Online (Sandbox Code Playgroud)


Rom*_*aza 16

哈哈!这很简单!试试这个:

$ touch filename
Run Code Online (Sandbox Code Playgroud)


小智 15

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

touch filename
Run Code Online (Sandbox Code Playgroud)

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

echo "Foo" > filename
printf "Foo" > filename
Run Code Online (Sandbox Code Playgroud)

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


小智 15

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

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


小智 14

第一种方法

echo -n > filename.txt
Run Code Online (Sandbox Code Playgroud)

第二种方法

> filename.txt
Run Code Online (Sandbox Code Playgroud)

第三种方法

touch filename.txt
Run Code Online (Sandbox Code Playgroud)

查看文件内容

vi filename.txt
Run Code Online (Sandbox Code Playgroud)


小智 11

这将创建一个包含当前时间戳的空文件

touch filename
Run Code Online (Sandbox Code Playgroud)


Iva*_*anM 10

就那么简单 :

> filename


Pra*_*ran 10

touch filename
Run Code Online (Sandbox Code Playgroud)

对于permission denied错误,请使用以下sudo命令:

sudo touch filename
Run Code Online (Sandbox Code Playgroud)


And*_*ndi 8

您可以使用该touch命令创建新的空文件.

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


Sam*_*rry 6

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

nano filename
Run Code Online (Sandbox Code Playgroud)