linux可不可以导出文件内容

71次阅读
没有评论

共计 2628 个字符,预计需要花费 7 分钟才能阅读完成。

本篇内容主要讲解“linux 可不可以导出文件内容”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让丸趣 TV 小编来带大家学习“linux 可不可以导出文件内容”吧!

linux 可以导出文件内容,在 linux 中可以用 cat 命令导出文件内容;cat 命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,其使用语法是“cat [xuanxiang] [wenjian]”。

Linux 中 用 cat 输出文件内容

功能:把一个或者多个文件(或者标准输入)连接在一起,并标准输出。(Concatenate FILE(s), or standard input, to standard output.)

cat 命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示。它常与重定向符号配合使用。cat 是 Concatenate 的缩写。

Linux 有三个特别文件,分别
 
- 标准输入 即 STDIN , 在 /dev/stdin
 
    一般指键盘输入, shell 里代号是 0
 
- 标准输出 STDOUT, 在 /dev/stdout
 
    一般指终端 (terminal), 就是显示器, shell 里代号是 1
 
- 标准错误 STDERR, 在 /dev/stderr
 
    也是指终端 (terminal), 不同的是, 错误信息送到这里
 
   shell 里代号是 2

 语法:cat   [选项]   [文件]

短选项长选项涵义 -A–show-all 等于 -vET-b–number-nonblank 对非空输出行编号 -e
等于 -vE-E–show-ends 在每行结束处显示 $ -n–number 对输出的所有行编号 -s–squeeze-blank 不输出多行空行 -t
与 -vT 等价 -T–show-tabs 将跳格字符显示为 ^I-v–show-nonprinting 使用 ^ 和 M - 引用,除了 LFD 和 TAB 之外

 输出文件内容 

显示文件 FILE 的内容 cat FILE

显示文件 FILE 的内容加上行号,需要加上参数 -n。行号从 1 开始。使用 - n 参数时,所有空行也会显示行号 cat -n FILE

忽略掉空行,用 -b cat -b FILE

当遇到有连续两行以上的空白行,就代换为一行的空白行,可以使用 - s 参数 cat -s FILE
保存内容

将标准输入保存到文件 FILE 中,如果文件已经存在,则覆盖掉原来的 cat FILE

将标准输入追加到文件 FILE 末尾 cat FILE  
合并文件
 
将两个文件 FILE1 和 FILE2 的内容合并为一个文件 FILE cat FILE1 FILE2 FILE

undefined

cat 使用实例

 从标准输入创建文件 
[root@web setup]# code cat 1.txt
Hello
Bash
Linux
键盘(快捷键)Ctrl+D 保存文件

[root@web setup]# ls -l 1.txt
-rw-r--r-- 1 root root 17 11-02 21:32 1.txt
[root@web setup]# cat 1.txt   显示 1.txt 文本内容。标准输出
Hello
Bash
Linux
[root@web setup]# cat 1.txt
Hello
Bash
Linux
[root@web setup]#


使用 heredoc 来生成文件
注意:粗体部分、here doc 可以进行字符串替换
[root@web setup]# cat 2.txt EOF
Hello
Bash
Linux
PWD=$(pwd)
EOF

[root@web setup]# ls -l 2.txt
-rw-r--r-- 1 root root 33 11-02 21:35 2.txt
[root@web setup]# cat 2.txt
Hello
Bash
Linux
PWD=/root/setup  
[root@web setup]#


输出行号
[root@web setup]# cat -n 1.txt
    1  Hello
    2  Bash
    3  Linux
[root@web setup]# nl 1.txt
    1  Hello
    2  Bash
    3  Linux
[root@web setup]#


在 bash 脚本中把文件内容加载到变量中
[root@web ~]# TEXT=$(cat .bash_profile)
[root@web ~]#
[root@web ~]# echo $TEXT
# .bash_profile

# Get the aliases and functions
if [-f ~/.bashrc]; then
       . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH
unset USERNAME
[root@web ~]#

heredoc 文档

在 linux shell 脚本中我们经常见到类似于 cat EOF 的语句,不熟悉的童鞋可能觉得很奇怪:EOF 好像是文件的结束符,用在这里起到什么作用?EOF 是“end of file”,表示文本结束符。

EOF
(内容)
EOF

EOF 在这里没有特殊的含义,你可以使用 FOE 或 OOO 等(当然也不限制在三个字符或大写字符)。

可以把 EOF 替换成其他东西,意思是把内容当作标准输入传给程

结合这两个标识,即可避免使用多行 echo 命令的方式,并实现多行输出的结果。

接下来,简单描述一下几种常见的使用方式及其作用:

cat EOF,以 EOF 输入字符为标准输入开始

cat filename,创建文件,并把标准输入输出到 filename 文件中,以 ctrl+ d 作为输入。

cat filename EOF,以 EOF 作为输入结束,和 ctrl+ d 的作用一样。

# cat test.sh EOF
#!/bin/bash
#you Shell script writes here.
EOF

undefined

其他写法

1、追加文件
# cat EOF test.sh

2、追加文件, 换一种写法
# cat test.sh EOF

3、EOF 只是标识,不是固定的。这里的“HHH”就代替了“EOF”的功能。结果是相同的。
# cat HHH iii.txt
sdlkfjksl
sdkjflk
asdlfj
HHH

4、非脚本中。如果不是在脚本中,我们可以用 Ctrl+ D 输出 EOF 的标识
# cat iii.txt
skldjfklj
sdkfjkl
kljkljklj
kljlk
Ctrl+D

到此,相信大家对“linux 可不可以导出文件内容”有了更深的了解,不妨来实际操作一番吧!这里是丸趣 TV 网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-12发表,共计2628字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)