测试开发面试准备之Linux -常用Linux系统命令(二)

1.文件管理

cat -n

diff log2014.log log2013.log

chmod ugo-r file

file命令用于辨识文件类型 file -i install.log

find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

# find /var/log -type f -mtime +7 -ok rm {} \;

cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。

$ who|cut -b 3
cwho | cut -d 4

less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。

locate命令用于查找符合条件的文档,他会去保存文档和目录名称的数据库内,查找合乎范本样式条件的文档或目录。

locate与find 不同: find 是去硬盘找,locate 只在/var/lib/slocate资料库中找。

locate的速度比find快,它并不是真的查找,而是查数据库,一般文件数据库在/var/lib/slocate/slocate.db中,所以locate的查找并不是实时的,而是以数据库的更新为准,一般是系统自己维护,也可以手工升级数据库 ,命令为:

locate -u 

一般情况我们只需要输入 locate your_file_name 即可查找指定文件。

rcp命令用于复制远程文件或目录。rcp指令用在远端复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到该目录中。

tee命令用于读取标准输入的数据,并将其内容输出成文件。

tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。

whereis命令用于查找文件。

该指令会在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件。

该指令只能用于查找二进制文件、源代码文件和man手册页,一般文件的定位需使用locate命令。

scp命令用于Linux之间复制文件和目录。

scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。

AWK

2、文档编辑

wc命令用于计算字数。

利用wc指令我们可以计算文件的Byte数、字数、或是列数,若不指定文件名称、或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据。

wc将计算指定文件的行数、字数,以及字节数。
  • -c或--bytes或--chars 只显示Bytes数。
  • -l或--lines 只显示行数。
  • -w或--words 只显示字数。
  • --help 在线帮助。
  • --version 显示版本信息。

uniq 命令用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用。

uniq 可检查文本文件中重复出现的行列。

uniq [-cdu][-f<栏位>][-s<字符位置>][-w<字符位置>][--help][--version][输入文件][输出文件]

参数

  • -c或--count 在每列旁边显示该行重复出现的次数。
  • -d或--repeated 仅显示重复出现的行列。
  • -f<栏位>或--skip-fields=<栏位> 忽略比较指定的栏位。
  • -s<字符位置>或--skip-chars=<字符位置> 忽略比较指定的字符。
  • -u或--unique 仅显示出一次的行列。
  • -w<字符位置>或--check-chars=<字符位置> 指定要比较的字符。
  • --help 显示帮助。
  • --version 显示版本信息。
  • [输入文件] 指定已排序好的文本文件。如果不指定此项,则从标准读取数据;
  • [输出文件] 指定输出的文件。如果不指定此选项,则将内容显示到标准输出设备(显示终端)。

实例

文件testfile中第 2、3、5、6、7、9行为相同的行,使用 uniq 命令删除重复的行,可使用以下命令:

uniq testfile 

testfile中的原有内容为:

$ cat testfile      #原有内容
test 30
test 30
test 30
Hello 95
Hello 95
Hello 95
Hello 95
Linux 85
Linux 85

使用uniq 命令删除重复的行后,有如下输出结果:

$ uniq testfile     #删除重复行后的内容
test 30
Hello 95
Linux 85

检查文件并删除文件中重复出现的行,并在行首显示该行重复出现的次数。使用如下命令:

uniq -c testfile 

结果输出如下:

$ uniq -c testfile      #删除重复行后的内容
3 test 30             #前面的数字的意义为该行共出现了3次
4 Hello 95            #前面的数字的意义为该行共出现了4次
2 Linux 85            #前面的数字的意义为该行共出现了2次 

当重复的行并不相邻时,uniq 命令是不起作用的,即若文件内容为以下时,uniq 命令不起作用:

$ cat testfile1      # 原有内容
test 30
Hello 95
Linux 85
test 30
Hello 95
Linux 85
test 30
Hello 95
Linux 85

这时我们就可以使用 sort:

$ sort  testfile1 | uniq
Hello 95
Linux 85
test 30

统计各行在文件中出现的次数:

$ sort testfile1 | uniq -c
   3 Hello 95
   3 Linux 85
   3 test 30

在文件中找出重复的行:

$ sort testfile1 | uniq -d
Hello 95
Linux 85
test 30
sort命令用于将文本文件内容加以排序。

sort可针对文本文件的内容,以行为单位来排序。

语法

sort [-bcdfimMnr][-o<输出文件>][-t<分隔字符>][+<起始栏位>-<结束栏位>][--help][--verison][文件]

参数说明

  • -b 忽略每行前面开始出的空格字符。
  • -c 检查文件是否已经按照顺序排序。
  • -d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。
  • -f 排序时,将小写字母视为大写字母。
  • -i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符。
  • -m 将几个排序好的文件进行合并。
  • -M 将前面3个字母依照月份的缩写进行排序。
  • -n 依照数值的大小排序。
  • -o<输出文件> 将排序后的结果存入指定的文件。
  • -r 以相反的顺序来排序。
  • -t<分隔字符> 指定排序时所用的栏位分隔字符。
  • +<起始栏位>-<结束栏位> 以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
  • --help 显示帮助。
  • --version 显示版本信息。

实例

在使用sort命令以默认的式对文件的行进行排序,使用的命令如下:

sort testfile 

sort 命令将以默认的方式将文本文件的第一列以ASCII 码的次序排列,并将结果输出到标准输出。

使用 cat命令显示testfile文件可知其原有的排序如下:

$ cat testfile      #testfile文件原有排序
test 30
Hello 95
Linux 85

使用sort命令重排后的结果如下:

$ sort testfile #重排结果
Hello 95
Linux 85
test 30


原文地址:https://www.cnblogs.com/william126/p/10887372.html

时间: 2024-08-30 10:07:50

测试开发面试准备之Linux -常用Linux系统命令(二)的相关文章

[转载]开发人员需要熟知的常用Linux命令之二:Crontab

上面说了那么多的常用命令,还有一个功能我们也经常用到,就是定时器.日程表,一般通过crontab来运行:crontab 指定在固定时间或固定间隔执行特定的脚本:crontab的常用参数有如下3个: -e :执行文字编辑器来设定日程表,一般默认的编辑器是VI: -r :删除目前所有的日程表: -l :列出目前所有的日程表: 设置日程表时,需要有固定的格式,共6部分,各部分间用空格间隔:其中第6个部分是要执行的命令,前5个部分是设置执行时间或者时间间隔的,具体取值范围和意义如下: 分钟[0-59]

测试开发面试题目汇总一

测试开发面试题目汇总 1. 项目经验 2. 测试的过程 3. 京东登录页面怎么测? 4. 如果一个普通用户,他的百度首页打不开,问题怎么定位?写出定位流程. 5.问简历上的第一个项目的详细情况,包括测试用例怎么写?怎么判断测试通过?项目的原理? 6.如果是做功能测试,能接受吗? 7.说一下你们工作中的测试流程 8.用她的手机给我看了下百度贴吧的发帖功能的界面,给我张纸,让我写出测试点(只需要考虑内容,表情,添加图片,@功能),写完讲一遍逻辑. 9  针对发朋友圈这个功能设计你的测试用例,请给出用

三十、Linux常用命令(二)

系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 cat /proc/cpuinfo 显示CPU info的信息 cat /proc/interrupts 显示中断 cat /proc/meminfo 校验

测试开发系类之Java常用知识点

测试需要的两门语言:Java,Python 测试开发:开发测试脚本->开发测试框架 Java需要掌握内容:基础语法.Java面向对象相关概念.Java常用类.基础测试框架 Java常用类: IO相关类,包括: 字节流InputStream,OutputStream,音频视频等 字符流Reader,Writer InputStreamReader,字节到字符的桥梁 OutputStreamWriter,字符到字节的桥梁 集合相关类: Collection(接口)->List->(Array

测试开发面试准备之HTTP协议-Http常用请求方法

那么HTTP请求报文和响应报文会是什么格式呢? 起始行:如 GET / HTTP/1.0 (请求的方法  请求的URL 请求所使用的协议) 头部信息:User-Agent  Host等成对出现的值 主体 不管是请求报文还是响应报文都会遵循以上的格式. 那么起始行中的请求方法有哪些种呢? GET: 完整请求一个资源 (常用) HEAD: 仅请求响应首部 POST:提交表单  (常用) PUT: (webdav) 上传文件(但是浏览器不支持该方法) DELETE:(webdav) 删除 OPTION

Java 开发应掌握的Linux常用命令(二)

1.查找文件find / -name filename.txt根据名称查找/目录下的filename.txt文件.2.查看一个程序是否运行ps –ef|grep tomcat查看所有有关tomcat的进程3.终止线程kill -9 19979终止线程号位19979的线程4.查看文件,包含隐藏文件ls -al5.当前工作目录pwd6.复制文件包括其子文件到自定目录cp -r sourceFolder targetFolder7.创建目录mkdir newfolder8.删除目录(此目录是空目录)r

Linux常用命令(二)

1.wget命令网络应用 wget命令用来从指定的URL下载文件.wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕.如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载.这对从那些限定了链接时间的服务器上下载大文件非常有用. 语法 wget(选项)(参数) 选项 -a<日志文件>:在指定的日志文件中记录资料的执行过程: -A<后缀名>:指定要下载文件的后缀名,多个后缀名之间使用

Linux 常用命令(二)

查看 环境配置文件 :cat /etc/profile 解压 tar 文件: tar -zxvf xxx.tar.gz 解压 bin 文件: ./xxx.bin 以后台方式运行: ./eclipse & linux分区不同于windows,linux下硬盘设备名为(IDE硬盘为hdx(x为从a-d)因为IDE硬盘最多四个,SCSI,SATA,USB硬盘为sdx(x为a-z)),硬盘分为主分区和扩展分区,一块最多为4个分区,不用说大家也知道-..所以主分区从sdb1开始到sdb4,逻辑分区从sdb

测试开发面试准备之HTTP协议-TCP与UDP基本区别

TCP与UDP基本区别  1.基于连接与无连接  2.TCP要求系统资源较多,UDP较少:   3.UDP程序结构较简单   4.流模式(TCP)与数据报模式(UDP);   5.TCP保证数据正确性,UDP可能丢包   6.TCP保证数据顺序,UDP不保证 一般面试官都会问TCP和UDP的区别,这个很好回答啊,TCP面向连接,可靠,基于字节流,而UDP不面向连接,不可靠,基于数据报.对于连接而言呢,其实真正的就不存在,TCP面向连接只不过三次握手在客户端和服务端之间初始化好了序列号.只要满足T