. 输出命令 echo,cat,管道(|),tee,重定向(>, >>)等
. 创建一个文件:用 touch、echo、cat、tee, 重定向(>, >>)等
[root@admin ~]
$ touch test.cc

[root@admin ~]
$ echo "" > empty.file

[root@admin ~]
$ ping localhost > ping_local &
[root@admin ~]
$ ping localhost | tee ping_local
[root@admin ~]
$ cat <<EOF > test.file
>hello
>.txt .txt > .txt
. cat:是 concatenate(连锁) 的简写,意思是合并文件。事实上cat不止这一层意思的啦
3.1 cat >fileame 记录的是键盘输入,相当于从键盘创建文件,并且只能创建新文件,不能编辑已有文件.'>'是数据重导向,会将你输入的文本内容输出到filename中.
不会出现>提示符,直接输入回车,文字都会记录.ctrl+c或者ctrl+d才能退出. 通过cat filename就可以查看刚才输入的内容.

3.2 cat <<EOF
cat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容;
EOF是"end of file",表示文本结束符。
结合这两个标识,即可避免使用多行echo命令的方式,并实现多行输出的结果。
cat经常在脚本的usage函数中用来输出脚本使用说明。
注意:这里的<<是左方向的,并且会出现PS2的提示符>,并且在输入EOF后,会退出编辑状态并打印出编辑内容.其实<<EOF与EOF之间是为了限定内容范围,并无实际意义,相当于ctrl+d,还可以理解为将echo一行一行的内容整合到一起,输出io,但并不生成文件.
EOF只是标识,并不是固定不变的也可以用别的符号代替比如EEE等等。Cat << EOF  ...EOF 最后一个EOF一定顶格写,还有相关命令一定要顶格写,否则起不到ctrl+d的作用.

3.3 cat >file <<EOF 或者 cat  <<EOF >file
就是3.1和3.2两条命令结合起来使用,既记录了键盘输入内容到文件中,同时又规定了结束符号之内的内容的范围。例子前面已经有了。
还有看到cat <<EOF| "|"之前是标准输入,之后为标准输出,再次输入EOF后结束,屏幕上还会打印出执行的命令内容.cat <<-EOF可以忽略掉TAB键.
注意这里的命令一定要紧跟"|"管道,或者用"/"转义符号,否则会提示找不到命令.
EOF只是一个标识,分界符。

. 文件的切分split和结合工具cat
split [参数选项] infile [outfile]
-l n 把infile拆分为具有n行的段,默认值为1000
-b n[bkm] 以体积为单位的拆分,约定每拆分后每个文件的大小 ,b代表512B,k代表1KB,m代表1MB。
-C bytes[bkm] 把bytes的最大值放入文件,坚持增加完整的行;
- 从标准输入读取;
--help 帮助;
比如我们想切分一个文件linuxdoc.txt,切分后,每两行存为一个新文件。
[root@localhost ~]# more linuxdoc.txt 注:linuxdoc.txt 文件内容查看;

[root@localhost ~]# split -l  linuxdoc.txt linuxdocsp 注:切分linuxdoc.txt文件,被切分后的文件名linuxdocsp开头
[root@localhost ~]# ls linuxdocspa* 注:查看切分后的所有文件;
linuxdocspaa linuxdocspab linuxdocspac linuxdocspad linuxdocspae
[root@localhost ~]# more linuxdocspa* 注:查看这些文件的内容;是不是每个文件都是两行呢?
linuxdocspaa
::::::::::::::

::::::::::::::
linuxdocspab
::::::::::::::

::::::::::::::
linuxdocspac
::::::::::::::

::::::::::::::
linuxdocspad
::::::::::::::

::::::::::::::
linuxdocspae
::::::::::::::

命令格式如下:
cat file1 file2 file3 ... ... > filename
我们可以把file1、file2、file3 等多个文件合并到一个文件中,其中filename是在合并这些文件的同时新建(覆盖旧文件)的文件

. 查看文件 cat,less,more,tail,head
cat 语法结构;
cat [选项] [文件]
选项
-A, --show-all           等价于 -vET
-b, --number-nonblank    对非空输出行编号
-e                       等价于 -vE
-E, --show-ends          在每行结束处显示 $
-n, --number             对输出的所有行编号
-s, --squeeze-blank      不输出多行空行
-t                       与 -vT 等价
-T, --show-tabs          将跳 字符显示为 ^I
-u                       (被忽略)
-v, --show-nonprinting   使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
--help     显示此帮助信息并离开
more 的语法、参数和命令;
more [参数选项] [文件]
参数如下:
+num                    从第num行开始显示;
-num                    定义屏幕大小,为num行;
+/pattern               从pattern 前两行开始显示;
-c                      从顶部清屏然后显示;
-d                      提示Press space to continue, 'q' to quit.(按空 键继续,按q键退出),禁用响铃功能;
-l                      忽略Ctrl+l (换页)字符;
-p                      通过清除窗口而不是滚屏来对文件进行换页。和-c参数有点相似
-s                      把连续的多个空行显示为一行;
-u                      把文件内容中的下划线去掉退出more的动作指令是q
more 的动作指令;
我们查看一个内容较大的文件时,要用到more的动作指令,比如ctrl+f(或空格键) 是向下显示一屏,ctrl+b是返回上一屏; Enter键可以向下滚动显示n行,要通过定,默认为1行;
我们只说几个常用的; 自己尝试一下就知道了;
Enter         向下n行,需要定义,默认为1行;
Ctrl+f        向下滚动一屏;
空 键         向下滚动一屏;
Ctrl+b        返回上一屏;
=             输出当前行的行号;
:f            输出文件名和当前行的行号;
v             调用vi编辑器;
! 命令        调用Shell,并执行命令;
q             退出more 当我们查看某一文件时,想调用vi来编辑它,不要忘记了v动作指令,这是比较方便的

比如我们列一个目录下的文件,由于内容太多,我们应该学会用more来分页显示。这得和管道 | 结合起来,比如:

[root@localhost ~]# ls -l /etc  |more
less的语法格式;
less [参数]  文件
常用参数
-c 从顶部(从上到下)刷新屏幕,并显示文件内容。而不是通过底部滚动完成刷新;
-f 强制打开文件,二进制文件显示时,不提示警告;
-i 搜索时忽略大小写;除非搜索串中包含大写字母;
-I 搜索时忽略大小写,除非搜索串中包含小写字母;
-m 显示读取文件的百分比;
-M 显法读取文件的百分比、行号及总行数;
-N 在每行前输出行号;
-p  pattern 搜索pattern;比如在/etc/profile搜索单词MAIL,就用 less -p MAIL /etc/profile
-s 把连续多个空白行作为一个空白行显示;
-Q 在终端下不响铃;de>
比如:我们在显示/etc/profile的内容时,让其显示行号;

[root@localhost ~]# less -N    /etc/profile
 less的动作命令;
进入less后,我们得学几个动作,这样更方便 我们查阅文件内容;最应该记住的命令就是q,这个能让less终止查看文件退出;
动作
回车键 向下移动一行;
y 向上移动一行;
空格键 向下滚动一屏;
b 向上滚动一屏;
d 向下滚动半屏;
h less的帮助;
u 向上洋动半屏;
w 可以指定显示哪行开始显示,是从指定数字的下一行显示;比如指定的是6,那就从第7行显示;
g 跳到第一行;
G 跳到最后一行;
p n% 跳到n%,比如 %,也就是说比整个文件内容的10%处开始显示;
/pattern 搜索pattern ,比如 /MAIL表示在文件中搜索MAIL单词;
v 调用vi编辑器;
q 退出less
!command 调用SHELL,可以运行命令;比如!ls 显示当前列当前目录下的所有文件;de>
就less的动作来说,内容太多了,用的时候查一查man less是最好的。

head 是显示一个文件的内容的前多少行;
用法比较简单;
head  -n  行数值  文件名;
比如我们显示/etc/profile的前10行内容,应该是:
[root@localhost ~]# head -n  /etc/profile
tail 是显示一个文件的内容的前多少行;
用法比较简单;
tail   -n  行数值  文件名
比如我们显示/etc/profile的最后5行内容,应该是:

[root@localhost ~]# tail  -n  /etc/profile
经常我们用来查看运行中的结果,比如:
tail -f /var/log/messages

. 生成文件的重定向符号(>, >>)
'>': 如果没有文件,创建一个新文件;如果存在文件,则覆盖
'>>': 如果文件不存在,创建文件,并将内容追加到文件末尾;如果文件存在,将内容追加到文件末尾。
这两个符号使用千万要注意,错用'>'后,原来的文件可挽救不回来了啊!

产生文件命令touch,echo,cat<<EOF>test,less,more,tail,head的更多相关文章

  1. Linux文件处理命令touch、cat、more、head详解

    命令touch详解 命令touch,所在路径及执行权限为: 可以看到,命令的路径为:/usr/bin/touch ,所以它的执行权限为所有用户 命令基本功能是创建空文件 (可以同时创建多个空文件,文件 ...

  2. linux 文件操作命令 touch、cat、more、less、head、tail

    touch /bin/touch 创建空文件 linux 创建文件可以使用特殊符号,/除外 touch test test1 创建了两个文件touch "test test1" 创 ...

  3. linux基础命令touch

    touch /home/ceshi    创建文件命令 touch    /home/ceshi1 ceshi2    同时创建两个文件. cat   显示文件内容(短的文件) -n  带行号 tac ...

  4. linux笔记:文件处理命令touch,cat,more,less,head,tail

    命令名称:touch功能:新建文件命令所在目录:/bin/touch用法:touch 文件名 命令名称:cat功能:显示文件内容命令所在目录:/bin/cat用法:cat [-n] 文件名参数:-n ...

  5. 文件的编辑命令-echo/cat

    touch test.yaml echo "line1 line2" >> test.yaml cat test.yaml line1 line2 # 创建test.y ...

  6. Ubuntu16.04 使用sudo cat EOF 编辑文件,提示Permission denied错误的解决办法

    一.执行命令报错 在Ubuntu16.04下,使用如下命令,修改hosts主机文件,居然提示权限错误: catty@node186:~$ sudo cat <<EOF > /etc/ ...

  7. 目录(cd mkdir rmdir rm pwd ls) 文件(ln touch mv rm cat more head rail) 文件权限(chmod chown chgrp) 文件通配符(* ? [])

    记住Linux目录树的结构是一个称职Linux系统管理员的必备素质! 目录漫游cd   cd - 目录显示pwd 目录管理 mkdir -p a/b/c/1 parent创建多层目录 -m 700   ...

  8. Linux常用命令touch/grep/mkdir/rm/cat/find/cp/mv/tar/gzip等

    Unix-->Linux(Ubuntu,Redhat,suse,fedora) 1. cd - :回到上次执行的那个目录(相当于“回看”的功能) 2. touch :创建一个文件,可以是任意后缀 ...

  9. linux的管道 |和grep命令以及一些其他命令(diff,echo,cat,date,time,wc,which,whereis,gzip,zcat,unzip,sort)

    linux提供管道符号“|”,作用是命令1的输出内容作为命令2的输入内容.通常与grep命令一起使用. 格式:命令1 |命令2 grep命令:全称为global regular expression ...

随机推荐

  1. [Falcor] Indroduce to Model

    How to work with JSON data indirectly through a Falcor Model. The Falcor Model allows you to work wi ...

  2. OpenStack Cinder源代码流程简析

    版权声明:本博客欢迎转载,转载时请以超链接形式标明文章原始出处!谢谢! 博客地址:http://blog.csdn.net/i_chips 一.概况 OpenStack的各个模块都有对应的client ...

  3. java.util.jar.JarFile cause native heap memory leak

    最近项目中使用了JarFile 这个类 来load jar包中的 configuration,大致的情况如下 public void processJarEntries(JarFile paramJa ...

  4. Proxy 代理模式

    简介 代理模式是用一个简单的对象来代替一个复杂的或者创建耗时的对象. java.lang.reflect.Proxy RMI 代理模式是对象的结构模式.代理模式给某一个对象提供一个代理对象,并由代理对 ...

  5. VB 增强的部件与引用

    常用部件 对话框 Microsoft Common Dialog Control 6.0 (sp6) COMDLG32.OCX Forms2.0控件        Microsoft Forms 2. ...

  6. (转) ThinkPHP模板自定义标签使用方法

    这篇文章主要介绍了ThinkPHP模板自定义标签使用方法,需要的朋友可以参考下  转之--http://www.jb51.net/article/51584.htm   使用模板标签可以让网站前台开发 ...

  7. solr可用于集群的搜索 【转】

    一. SOLR搭建企业搜索平台 运行环境: 运行容器:Tomcat6.0.20 Solr版本:apache-solr-1.4.0 分词器:mmseg4j-1.6.2  词库:sogou-dic 准备工 ...

  8. Linux下安装php加速组件XCache

    这里选择的是稳定版本的1.2.2版本,2.0版本的不稳定.wget http://xcache.lighttpd.net/pub/Releases/1.2.2/xcache-1.2.2.tar.gzt ...

  9. AFNetworking使用详解

    导语: 众所周知,AFNetworking是目前IOS开发中非常受欢迎的第三方网络通信类库,同时AFNetworking对苹果官方NSURLConnection和NSURLSession进行了封装,使 ...

  10. 你好,C++(38)从问题描述中发现对象的属性和行为 6.4 工资程序成长记:类与对象(上)

    6.4  工资程序成长记:类与对象 “夜半三更哟,盼天明:寒冬腊月哟,盼春风.若要盼得哟,涨工资,岭上……”自从上次老板许诺给小陈涨工资以后,一转眼又过去几个月了,可是涨工资的事一点动静都没有.小陈只 ...