less加管道tail_cat,more,less,head,tail,输出重定向

对文件和文件夹的操作

ls ,mkdir,touch ,pwd,cp,mv,rm,ln

对文件内容进行操作—》看文件里的内容

cat more less head tail

vim编辑器概述

1.新建一个空文件

# touch liupeng.txt

2.使用vim编辑器

1. # vim luyongkang.txt

2. 按字母i进入插入模式,开始修改文本 (insert)

3. 输入内容

4. 按ESC键,进入命令模式 (escape)(逃离)

5. 输入:wq ,进入末行模式,退出并且保存(written quit)

#vim xiyouji.txt

如果xiyouji.txt存在,就是打开,如果不存在,vim编辑器会自动帮助我们新建

cat 用来查看文件里的内容

ls 是查看文件夹里的内容

cat命令

cat -n 显示文件内容和行号

-n, –number

number all output lines

tac命令

tac:用来倒序显示cat的结果

tac liupeng.txt |cat -n 用来倒序显示cat结果且有行号

| (管道符):将前面一个命令的输出送给后面一个命令作为输入 。借花献佛

PS:操作系统中进程与进程间的通信方式:

管道

系统IPC(消息队列、信号量、共享存储)

SOCKET

more命令

用途:全屏方式分页显示文件内容

交互操作方法:

按Enter键向下逐行滚动

按空格键向下翻一屏、按b键向上翻一屏 (back)

按q键退出 (quit)

# cat -n messages |more

显示行号并且分页

less命令

用途:与more命令相同,但扩展功能更多

交互操作方法:

与more命令基本类似,但个别操作会有些出入

【page up】【page down】上翻下翻页

head命令

(从开头看)

用途:查看文件开头的一部分内容(默认为开始10行)

格式:head -n 数字 文件名

# head -n 2 messages

显示前2行的内容

# cat -n messages |head -n 3

等价于

# head -n 3 messages |cat -n

tail命令

用途:查看文件结尾的少部分内容(默认为10行)—->尾10行

tail -f 文件名

tail命令高级用法

格式:tail -n 数字 文件名

命令参数:

-q 隐藏文件名

-v 显示文件名

-c 显示字节数

-n 显示的行数

例如:

tail -n +3 /etc/passwd 从第三行开始显示

tail -n -3 /etc/passwd 显示最后三行

head -n -3 /etc/passwd 显示除最后三行外的信息

head -n +3 /etc/passwd 显示前三行

练习题

对messages文件进行操作

1.显示第6行内容

2.显示第10行到20行的内容

3.显示第100行到200行的内容

# cat -n messages |head -6|tail -1

# cat -n messages |head -20|tail -11

# cat -n messages |head -200|tail -101

注意:head -3 等价 head -n 3

ps aux命令 查看当前系统进

# ps aux

ps 查看当前系统进程信息

ps - report a snapshot of the current processes.

-u userlist

aux 是选项

ax显示所有的进程

# ps aux|more 分页显示所有的进程信息

wc 统计命令

-c, --bytes

print the byte counts

-m, --chars

print the character counts

-l, --lines

print the newline counts

注意:一个数字、特殊符号、英文字母占1个字节,一个汉字占2-3个字节

注意中英文输入法

# ps aux|tail -n +2|wc -l

显示当前有多少进程数量

sed 对文本文件进行处理

# cat-n messages |sed -n '1,3p' 显示1到3行

# cat-n messages |sed -n '1p;3p;5p'

显示第1行、第3行、第5行

PS:p是输出相关的内容到屏幕上(print)

小结

cat :一瞬间全部显示,有显示行号的功能

more less:分页显示

head:头10行

tail:尾10行,高级功能,可以从第几行开始显示 tail -n +3 messages

PS:tail -n 3 等价 tail -3

cat 扩展功能

>

输出重定向符号:将本该在屏幕上输出的内容重新定向到一个文件里。(乾坤大挪移)

如果后面接的文件不存在,则自动建立。如果文件存在,则覆盖替换原来文件里的内容。

>>

输出重定向符号(追加):追加到文件的末尾,如果后面接的文件不存在,则自动建立。如果文件存在,则覆盖替换原来文件里的内容。

①# cat wangshuo.txt >ws.txt

覆盖

②# cat wangshuo.txt w.txt >1.txt

将两个文件合并为一个1.txt文件

here document <<

生成一个指定内容的文件,使用here document 和输出重定向功能,例:

# cat >LP.txt <

(新建一个LP.txt文档,并且往里面写入内容,且以EOF结束)

> wangnan

> dezhou

> EOF

PS:EOF,即 End OF the…,可以用别的字符代替EOF

怎么写脚本

(多写点英文注释)

#vim lp777.sh

(以下是脚本内容)

#!/bin/bash

#author : LP

#company : chinaitsoft

#function: create file and dirctory

#version: 1.0

执行脚本:

# bash lp777.sh

脚本执行的时候,从文件的第1条命令开始执行,到最后一条命令。

脚本,即scripts。其实脚本就是一个存放了很多条命令的文件

执行的顺序是从第1条到最后一条命令。

练习:

编辑一个脚本文件create_file.sh实现下面功能:

1.新建一个文件夹liudehua

2.进入liudehua目录,新建10个空文件zhangxueyou1 zhangxueyou2

到zhangxueyou10

3.生成一个文件叫wangjishun.txt,内容如下:

wang ji shun

18+

nan

qilu

4.输出wangjishun.txt的内容到屏幕上

5.输出一行***************在脚本执行的最后一行

补充小知识

# [ -d liudehhua ]

判断liudehua目录是否存在

$? 代表上一条命令的返回值,如果上一条命令执行成功为0,如果非0就表示不成功

初识if…else…

if 命令

then

命令1

命令2

....

else

命令3

命令4

....

if命令执行成功就是条件成立,不成功就是条件不成立。

条件成立,则执行then后面的语句命令,如果条件不成立,则执行else后面的语句命令。

if [ -d liudehua ]

then

echo "liudehua is exist"

else

mkdir liudehua

fi

例子:

#!/bin/bash

#author : LP

#company : chinaitsoft

#function: create file and dirctory

#version: 1.0

#create liudehua directory ----注释

if [ -d liudehua ]

then

echo "liudehua is exist"

else

mkdir liudehua

fi

cd liudehua

touch zhangxueyou{1..10}

#create file wangjishun.txt

cat >wangjishun.txt <

wang ji shun

18+

qilu

nan

EOF

cat wangjishun.txt

echo "*************************"

末尾的小总结

cat more less head tail :看文件里的内容

which whereis locate :查找系统里的命令文件存放在哪里?

which命令

用途:查找可执行文件并显示所在的位置

—— 搜索范围由 PATH 环境变量指定

格式:which 命令或程序名

你可能感兴趣的:(less加管道tail)