4.1.4Linux常用命令——文件处理命令
- mkdir是创建目录命令,如果现在想 创建文件 ,则使用touch命令
举例:创建japanlovestory.list文件名
touch加文件名和touch加目录加文件名有什么区别?
在Linux命令中如果这个命令的参数后面没有指定这个参数的详细目录,则表示在当前目录下执行者个操作,创建这个文件。但是如果你想放在其他目录下创建这个文件,一定要指明它的详细的绝对路径,比如这里的/root/Japanlovestory.list就指明了其在/root根目录下(否则容易找不到遮盖文件创建到了哪里):
LINUX的后缀名和WIN不一样,这里的list没有什么特别含义。在WIN中有一些默认带空格的目录,但在Linux中不建议创建带空格的文件,如下例:
例中创建一个名叫“shenchao girl"的文件,但是执行实际是创建了两个文件:shenchao和girl,因为这里已经有一个目录叫shenchao,所有并没有创建与目录同名的文件shenchao。正确的做法是用双引号:
- 查询一个文件的内容:cat
显示时候加行号: cat -n,可以方便清晰查看shell的脚本文件;tac,它可以倒着显示文件的信息
如果这个文件比较长,cat就在一屏屏刷新显示,这种情况cat就不合适了,应使用more
进入more后可以使用空格或f(frontpage)可以一页一页的往后翻,按回车可以一行一行切换显示,待找到需要的内容后可以使用q退出。如果需要往回翻(比如翻过了)则可由使用less命令:
按pageup一页一页往上翻,按↑时一行一行往上翻页。而且less还可以搜索:输入/加你要搜索的内容,即可高亮显示,按n(next)就可以一个高亮接着一个高亮显示。所以用more不如用less!
- 当一个文件很长,只想看前几行时:head命令
example:
看/etc目录下的services文件的前7行
如果head直接加文件名不要-n指定行数,则会默认显示前10行。
- tail,同理,和上述情况相似是是从末尾开始查找后n行
注意tail -f
系统在在/var/log目录下的一个日志文件messages,我们用tail -f命令查询它:
tail -f /var/log/messages
得到如下所示结果,显示了这个文件最末尾的位置:
但是它并没有回到命令行:
意思就是如果这个文件的内容进行了变化,在这个命令操作状态下,它也会实时变化的,那这有什么用呢?
——如果这个日志文件有什么变动,那么我在电脑上就能实时观测到这个日志文件的更新变动,具体演示示例如下:
用linux远程连接服务器:
我们做一个增加网卡的IP地址实验来演示“tail -f动态显示日志文件”的动态和实时性,实验过程内容如下:
一个网卡有多个IP地址,ifconfig这个命令可以设置或者更改它的IP地址——直接ifconfig加网卡名称(eth0)即可,但是如何把一块网卡设置多个IP地址?——加冒号,如eth0:1,增加一块虚拟网卡。然后加上地址(192.168.1.1),即给网卡绑定了多个地址,
回车,观察tail -f有没有一个动态的变化,可以用来监视一些日志