温故而知新--Linux学习笔记(二)实用的简单命令的简单用法
来源:互联网 发布:2016网络舆论事件 编辑:程序博客网 时间:2024/06/10 23:59
一、文件内容与信息查看:
1、cat和less:
cat filenameless filename
cat命令,用来查看一个文件的所有内容到文件尾。
并且不进入文件内部,而是将文件内容直接显示在shell命令行之后。但是有时我们要查看的文件内容过多,直接查看会导致只能看到文件尾及之前的部分内容,不是太好用。
less命令,用来查看一个文件的所有内容(从头开始查看)。
也不进入文件内部,只是类似man一样的显示方式,便于全文查看,同样类似man命令按q退出。只不过man是查看系统命令(eg:man pwd)、函数接口(eg:man open)、函数库(eg:man errno.h)、特殊文件(设备)(eg:man hd)等,而less只是用来查看文件内容。
2、head和tail:
在看到这两个命令之时,我最先想到的是链表操作时的指针pHead和pTail,一个头一个尾。我们经常会要查看一些文件的那么这两个命令怎么用呢?
head -number filenametail -number filename
例如,head -8 filename:查看文件名为filename的文件的前八行内容。而tail -8 filename:则是查看文件名为filename的文件的后八行内容。类似于cat,直接显示在命令行之后。如图:
对于link_circular.c文件,head从头文件开始查看8行,而tail查看后八行程序内容。
4、wc命令:
首先我们通过wc --help
来查看wc命令的基本选项与参数信息如下图显示:
这里,我们只拿出-l、-c、-w、-m
用作演示说明:
/*从大到小依次显示文件的行数、单词总数、所占字节大小、字符总数*/1、wc -lcmw link_circular.c2、wc -lcmw link_double.c/*没有加选项时,默认输出行数、单词数、字节数三项*/3、wc link_circular.c link_double.c
二、截屏命令与历史命令查询命令:
1、截屏命令:gnome -screenshot
我们无论是在windows还是Linux下都可以用键盘上的PtrScr SysRq键截取全屏图片,但是由于特殊需要(在Linux下测试时,截取博客所需素材图片),我找了一下这个命令并写出来,其实还是非常实用的。
gnome -screenshot//不带参数全屏截取;gnome -screenshot -w//截取(捕获)当前活动的shell窗口;gnome -screenshot -a//自定义截屏,可以行确定截取的矩形窗口大小,运行该命令后,便可用鼠标选定截取区域;gnome -screenshot -w -d 时间参数t//t秒后截取当前活动的shell窗口,方便将要截屏的窗口选为活动窗口以及调节窗口尺寸
2、历史命令查询:history:
history命令,用来查看以往使用过的命令。由于有时某些命令过长,难于记忆并且用Tab键也获取不了。只要我们最近使用过,就可以用history来查询。(不用history,而在命令行中直接按上键亦可以查找历史命令,只不过上键只适用于最近使用的十来个命令,比较方便)
history//查询以往使用过的命令history -c//清除命令使用历史
(1)、history:
(2)、history -c:
(3)、在history之后,按CTRL + R键后可输入命令的前几个字母,便可以匹配出按顺序包含这几个字母的命令,回车之后执行。如图:我在history命令执行以后,紧接着按了CTRL + R,再输入了gn两个字母,便匹配出了gnome -screenshot -a,很是方便。
(24)、在history之后,在命令行输入!,并在!之后接着输入历史命令中的命令的行号,便可执行对应的命令,如图所示:
三、管道定向命令|、>、>>
:
1、“cat”命令、管道命令 “|”、与“more”三个的组合使用:
管道命令“|”(与逻辑运算符 “|”(或)相同),与more命令其基本使用如下:
command 1 | command 2 /*将命令1的结果再交由命令2处理*/more /*分页显示内容*/
举例说明:
(1)、只用cat查看vim编辑器配置文件(vimrc),文件直接显示完全,由于文件过长,没有仔细查看,vimrc文件的前面的所有信息都能被刷屏刷掉了,只在命令行中显示最后十几行。
cat /etc/vimrc
(2)、组合使用,使cat更合理:
cat /etc/vimrc | more
将cat查看到的所有内容交给more处理,即分页显示cat查到的所有信息。如图所示,最后一行有一个“–more–”标志,表示之后还有,可按回车键一行一行查看。
2、管道定向命令”>”、”>>”:
这两个命令都是将一个文件的内容写入另一个文件中,而两个命令的不同之处在于:>会覆盖原有文件内容,>>则只是把新内容增加到源文件之后。如图所示:
(1)、>>命令:
cat one.c >> one.txt//将cat one.c得到的文件内容,增加到one.txt文件之中,所以当我们再次查看one.txt文件时会发现多出几行
(2)、>命令:
cat one.c > one.txt//将one.c将cat one.c得到的文件内容,覆盖到到one.txt文件之中,所以当我们再次查看one.txt文件时会发现原来的文件内容已经被修改。
四、文件权限修改与所属主所属组的修改:
1、文件所属主、所属组修改:
(1)、chown:chown username filename/*修改filename文件所属主为username*/chown :groupname filename/*修改filename文件所属组为groupname*/chown user:groupname filename/*同时修改所属组与所属主*/(2)、chgrp:chgrp group filename/*修改filename文件所属组为groupname*///添加选项-R可递归修改
2、文件权限修改:
首先文件权限分为读、写、执行、无权限四种。即rwx-,其中r、w、x、-分别可用4、2、1、0分别表示。chmod的使用:(1)数字组合方式:eg:chmod 777 filename/*将文件名为filename的文件的所属主、所属组、及除所属主所属组的其它用户的操作权限均设为rwx*/chmod 000 filename/*将文件名为filename的文件的所属主、所属组、及除所属主所属组的其它用户的操作权限均设为---(不可操作)*/(2)、+-=与ugo:u(user)、g(group)、o(other)+增加、-减去、=修改为(3)、chmod --reference=filename1 filename/*将文件filename的操作权限修改为与文件filename1相同*/
(1)、不同方式实现:
(2)、递归修改:
五、关键字查找、文件查找、挂载等命令的简单使用:
1、文件查找命令find:
find 路径 -name 文件名//文件名可使用通配符
举例:找到/etc下的名字为vim*的文件夹(即含有vim三个关键字的文件夹),并交给cat命令显示查看:
2、关键字匹配文件查找grep:
grep -n "关键字B" 路径A//查找路径A下所有包含"关键字B"的文件,并显示该关键字在该文件中所在行数与本行内容。grep -r "关键字B" 路径A//递归匹配关键字
3、U盘挂载、局域网某IP地址分享文件夹挂载:
(1)、U盘挂载:
mount 文件系统X /mnt /*将文件系统X挂在到/mnt目录下*/umount /mnt /*将挂载在/mnt下的文件系统卸载,注意:卸载时,当前目录不能为/mnt或其子目录,否则会卸载失败*/
(2)、局域网下某IP地址分享文件夹挂载:
showmount -e IP /*显示该IP的文件夹*/mount -t nfs IP:/filename /mnt /*将该IP分享的名为filename的文件夹挂在到本机/mnt目录下*/
eg:IP为:172.25.27.122的主机分享了file、book和code三个文件夹。
showmount -e 172.25.27.122就会显示这三个分享的文件
mount -t nfs 172.25.27.122:/book /mnt就会将分享book的目录挂在本机的/mnt目录下
- 温故而知新--Linux学习笔记(二)实用的简单命令的简单用法
- Python学习笔记(二)if语句的简单用法
- Linux学习笔记(二)命令格式与简单命令
- Linux很实用的命令(简单总结)
- 温故而知新--Linux学习笔记(三)Vim编辑器的使用
- bootstrap学习笔记(3)--less语言的简单实用
- 简单的linux命令学习
- linux的简单命令学习
- grep命令的简单实用
- linux的关于网卡的简单实用命令
- Linux系统下的简单命令【二】
- Android中关于JNI 的学习(四)简单的例子,温故而知新
- 【C#学习笔记】反射的简单用法
- Rhino学习笔记(二)---简单的使用
- java中一些简单的基础知识,温故而知新
- 记录一些简单实用的vim用法
- Linux学习(1)----一些简单的命令
- Linux--awk命令的简单学习
- session入库,session入缓存
- 设备唯一标识
- IOS WKWebView与JS的那些事
- 【职场】内向,并不防碍你变得更优秀
- 按字母排序问题
- 温故而知新--Linux学习笔记(二)实用的简单命令的简单用法
- Java中XML和JSON操作
- 【腾讯Bugly干货分享】Android性能优化典范——第6季
- Android中的Serializable和Parcelable的qubie
- python带验证码登录
- java 内部类为什么不能用静态方法
- win7 caffe使用笔记——draw_net.py绘制caffe网络
- node.js的http模块输出request参数
- leetcode 234. Palindrome Linked List