`
tianshibaijia
  • 浏览: 1125573 次
文章分类
社区版块
存档分类
最新评论

linux cat 命令学习

 
阅读更多
cat 命令学习笔记:

# 一个参考的例子


part 1: 查看cat 命令的帮助:

$man cat

CAT(1) User Commands CAT(1)


NAME
cat - concatenate files and print on the standard output
...


part 2: cat 命令常用参数的用法举例:

以下参数基于一个完整的例子:
# filename: test.py
import pymongo

conn = pymongo.Connection(host=["10.64.77.246:27017","10.64.77.205:27017","10.64.77.206:27017"])
db = conn.test
for u in db.users.find():
print u


param 1:

-A, --show-all
equivalent to -vET
# 一组合命令参数, 相当于 vET

$ cat -A test.py
import pymongo$
$
conn = pymongo.Connection(host=["10.64.77.246:27017","10.64.77.205:27017","10.64.77.206:27017"])$
db = conn.test$
for u in db.users.find():$
print u$


param 2:

-b, --number-nonblank
number nonempty output lines
# 所有非空行显示行号

$ cat -b test.py
1 import pymongo

2 conn = pymongo.Connection(host=["10.64.77.246:27017","10.64.77.205:27017","10.64.77.206:27017"])
3 db = conn.test
4 for u in db.users.find():
5 print u


param 3:

-e equivalent to -vE
# 一组合命令参数, 相当于 vE

$ cat -e test.py
import pymongo$
$
conn = pymongo.Connection(host=["10.64.77.246:27017","10.64.77.205:27017","10.64.77.206:27017"])$
db = conn.test$
for u in db.users.find():$
print u$


param 4:

-E, --show-ends
display $ at end of each line
# 在每行末尾显示$符号

$ cat -E test.py
import pymongo$
$
conn = pymongo.Connection(host=["10.64.77.246:27017","10.64.77.205:27017","10.64.77.206:27017"])$
db = conn.test$
for u in db.users.find():$
print u$

param 5:

-n, --number
number all output lines
# 显示所有行的行号

$ cat -n test2.py
1 import pymongo
2
3 conn = pymongo.Connection(host=["10.64.77.246:27017","10.64.77.205:27017","10.64.77.206:27017"])
4 db = conn.test
5 for u in db.users.find():
6 print u

param 6:

-s, --squeeze-blank
suppress repeated empty output lines
# 压缩重复出现的空行,即如果文件中有两个空行,使用 -s 参数后之后显示一个空行。 举例: 在 test.py 中 import pymongo 后再添加一个空行,打印的结果仍然如下

$ cat -s test.py
import pymongo

conn = pymongo.Connection(host=["10.64.77.246:27017","10.64.77.205:27017","10.64.77.206:27017"])
db = conn.test
for u in db.users.find():
print u


patam 7:

-t equivalent to -vT
# 一组合命令参数, 相当于 vET

param 8:

-T, --show-tabs
display TAB characters as ^I
# 将文档中使用 table 键的地方都用^I 做标记, 使用了多个table, 就有多个 ^I (其实,个人觉得这个很有用,尤其在 table 和 space 混合使用出现问题的时候,方便查看table键的使用) 举例:在 "conn = xxxxx" , 和 ”print u “所在行首分别插入两个和一个table, 结果如下


$ cat -t test2.py
import pymongo

^I^Iconn = pymongo.Connection(host=["10.64.77.246:27017","10.64.77.205:27017","10.64.77.206:27017"])
db = conn.test
for u in db.users.find():
^Iprint u


param 9:

-u (ignored)
# 不知道这个东东是什么意思,忽略所有的参数原样输出? 还是压根就忽略这个参数?真的不知道 # todo

$ cat -u test.py
import pymongo

conn = pymongo.Connection(host=["10.64.77.246:27017","10.64.77.205:27017","10.64.77.206:27017"])$
db = conn.test$
for u in db.users.find():
print u


param 10:

-v, --show-nonprinting
use ^ and M- notation, except for LFD and TAB


# 在ue 中编辑生成的文件, 会有^M, 使用 cat -v, 可以将这些符号显示出来。 其实他们就是一些换行符号。 在vi里^M由Ctrl +v +m组合生成。 举例: 在UltraEditor 编辑一个文件ue_test, 移到 ubuntu , 输出效果如下:

$ cat -v ue_test
hi,UE:^M
this is just for test ^M.^M
you will be transfered to jia-svn.^M
^M
-- jiaxiaolei^M


part 3: cat 命令操作举例

instance 1:

cat -n filename1 > filename2 把 filename1 的档案内容加上行号后输入 filename2 这个文件里
举例:
$ cat -n test.py > test_2.py
$ cat test_2.py
1 import pymongo
2
3 conn = pymongo.Connection(host=["10.64.77.246:27017","10.64.77.205:27017","10.64.77.206:27017"])
4 db = conn.test
5 for u in db.users.find():
6 print u

instance 2:
cat -b filename1 fileanme2 >> filename3 把 filename1 和 filename2 的档案内容加上行号(空白行不加)之后将内容附加到 filename3 里。

举例:


$ cat -b test.py test_2.py >> test_3.py
$ cat test_3.py
1 import pymongo
2 conn = pymongo.Connection(host=["10.64.77.246:27017","10.64.77.205:27017","10.64.77.206:27017"])
3 db = conn.test
4 for u in db.users.find():
5 print u
6 1 import pymongo
7 2
8 3 conn = pymongo.Connection(host=["10.64.77.246:27017","10.64.77.205:27017","10.64.77.206:27017"])
9 4 db = conn.test
10 5 for u in db.users.find():
11 6 print u

instance 3:

cat /dev/null > /etc/test.txt 清空/etc/test.txt档案内容
清空文件的内容,/dev/null 为系统提供的一个空的文件(原理上是把一个空的文件输出重定向到一个非空文件。如果自己新建一个空文件 a.txt ,在console 模式下执行 $cat a.txt > filename, 也可以将filename 置空)

$ cat /dev/null > test_3.py
$ cat test_3.py
$

part 4: cat 的主要功能:go

1. 一次显示整个文件。$ cat filename~,y6;e
2. 从键盘创建一个文件。$ cat>filename0#!7
#只能创建新文件,不能编辑已有文件.:z)
3. 将几个文件合并为一个文件。 $cat file1 file2> file"t?=

part 5: cat 命令和vim命令的主要 区别:
vim 是一个强大的文件编辑工具。核心在”编辑”。既然是编辑, 显示文件内容自然是必须的,所以 vim filename 也可以查看文件内容;
cat 客观来说,是一个“显示”命令,把文件内容串接然后显示在屏幕中

具体来说,就是只要是一文件(linux 中一切皆是文件),不管其内容为何, cat 都可以把它显示在 屏幕上。 而vim 却没有这么“单纯”,它会用自己的一套标准去判断。比如:

$ sudo vim /dev/disk/by-id/ata-VBOX_HARDDISK_VBf25c3a20-b91d6dcf
这样的情况, vim 是无法查看的, 提示 “"/dev/disk/by-id/ata-VBOX_HARDDISK_VBf25c3a20-b91d6dcf" is not a file ”

分享到:
评论

相关推荐

    网络安全学习linux部分命令

    兄弟连Linux常用命令 1.1命令格式 Linux命令格式 ​ 命令 [-选项] [参数] ​ ctrl+l清屏 1.2目录处理命令 1. ls----显示目录文件 ​ 组里每个成员都享有这个组的权限 ​ -d 查看目录属性 显示目录本身,而不...

    linux必须的60个命令

    就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。 不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里笔者把比较重要和使用频率最多的命令,按照它们在系统中的作用...

    Linux常用命令大全.zip

    通过基础的命令学习可以进一步理解Linux系统。 一、系统: # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinfo # 查看CPU信息 # hostname # 查看计算机名 # ...

    Linux的常用命令cat、sed、zip等用法,以及shell编程的基本语法,以及makefile编写方式等等

    2.linux基本命令:如文件查看命令(cat、more)等、管道、压缩包、文件权限管理命令、重定向、链接的语法 3.lvim工作方式、gcc、gdb用法、动态库和静态库的制作与使用、makefile的编写语法,以及makefile里面的模式...

    Linux基础命令学习——文本文件编辑命令(三)

    cat命令 用于查看纯文本文件(内容较少的) -n或-number:由1开始对所有输出的行数进行编号 cat:进入交互模式 Ctrl + C:强制中断命令执行 Ctrl + D:退出交互模式 cat >test.txt:把内容写入到test.txt文件中,...

    linux命令大全

    就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。 不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里笔者把比较重要和使用频率最多的命令,按照它们在系统中的作用...

    Linux命令学习笔记

    主要教大家如何使用Linux命令写出Shell脚本。涉及Linux管道,常用的字符处理cat、grep、tail、echo等命令。同时介绍了环境、作用域、流程控制、Shell脚本的建立与执行等。并赋上了相关的案例。

    Linux必学的60个命令

    要想真正理解Linux系统,就必须从Linux命令学起,通过基础的命令学习可以进一步理 解Linux系统。 不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里笔者 把比较重要和使用频率最多的...

    linux常用命令源码(ls,cp,chmod,df等一百多个命令)

    linux下大部分常用命令源码,偶正要开始学习-_- base64.c basename.c c99-to-c89.diff cat.c chcon.c chgrp.c chmod.c chown.c chown-core.c chown-core.h chroot.c cksum.c comm.c copy.c cp.c cp-hash.c csplit.c ...

    新手入门级linux系统常用命令大全

    Linux命令学习是大多数新手的最大障碍,今天为大家分享一些Linux系统下常用的基础命令,linux常用命令全集 Linux系统信息命令 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在...

    linux命令全集.txt

    linux命令全集,我学习的时候第一个网上找的文档,现在共享 如:(1)cat命令用于在linux标准输出上显示文件内容,也用于连接两个或者多个文件。 (2)clear在linux系统中用来清除终端屏幕

    Linux命令大全搜索工具,内容包含Linux命令手册、详解、学习、搜集 .zip

    linux常用命令大全 1.Linux管理文件和目录的命令 命令 功能 命令 功能 Pwd 显示当前目录 ls 查看目录下的内容 Cd 改变所在目录 cat 显示文件的内容 Grep 在文件中查找某字符 cp 复制文件 Touch 创建文件 mv 移动...

    Linux常用命令全集 linux目录架构 学习必备

    讲解预览:cat 使用权限:所有使用者 使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName 说明:把档案串连接后传到基本输出(萤幕或加 > fileName 到另一个档案) 参数: -n 或 --number 由 1 开始对...

    linux常用命令大全.pptx

    此文档格式为ppt格式,支持下载,主要从linux常用的基础命令入手,包含cat、more、ps、touch、rmdir等命令,帮助初学者来学习linux。

    Linux常用命令超详细学习笔记.rar

    下面是一些常用的Linux命令及其简要介绍: ls:列出目录中的文件和子目录。 cd:切换当前工作目录。 pwd:显示当前工作目录的路径。 mkdir:创建新的目录。 rm:删除文件或目录。 cp:复制文件或目录。 mv:移动文件...

    linux系统与数据库视频教程学习合集(软件测试必备知识)

    linux学习视频day01:13-cat和重定向命令.mp4 linux学习视频day01:14-more命令.mp4 linux学习视频day01:15-管道.mp4 linux学习视频day01:16-回顾今天.mp4 linux学习视频day01:2-linux图形界面,mp4 linux学习视频day...

    华为内部Linux学习资料

    2.1 cat 命令介绍 2.2 vi 命令介绍 2.3 head 及tail 命令介绍 第 3 章 网络配置及操作 3.1 网络配置命令. 3.2 网络操作命令 3.3 常用网络配置文件介绍 3.4 常用网络操作方法 第 4 章 常用使用技巧 4.1 Linux 下...

    常用 Linux 命令的基本使用.docx

    01. 学习 Linux 终端命令的原因 02. 常用 Linux 命令的基本使用 03. 自动补全 Linux 终端命令格式 01. 终端命令格式 02. 查阅命令帮助信息(知道) 2.1 --help 2.2 man 文件和目录常用命令 目标 01. 查看...

    学习Linux必备常用的60个命令

    ◆ 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln; ◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab; ◆ 网络操作命令:ifconfig、ip、ping、netstat...

Global site tag (gtag.js) - Google Analytics