sort命令

sort   #按照字典序排序
sort -n #以数值来排序,避免10比2小的情况
sort -k #如果文件有多列,指定排序的列
sort -r #逆序排列

uniq 命令

一般结合sort命令,出去文件中重复的行

sort testfile | uniq   #删除文件中重复出现的行
sort testfile | uniq -c #删除文件中重复出现的行,并在行首显示该行重复出现的次数。

awk 命令

NF                 浏览记录的域的个数,亦统计的是每行列的总数
NR 已读的记录数,亦有多少行
$0变量是指整条记录。$1表示当前行的第一个域,$2表示当前行的第二个域,......以此类推。
$NF是number finally,表示最后一列的信息
# 输出包含"re" 的行
$ awk '/re/ ' log.txt # 输出第二列包含 "th",并打印第二列与第四列
$ awk '$2 ~ /th/ {print $2,$4}' log.txt $ awk '$1==2 {print $1,$3}' log.txt
#输出第一列等于2,并打印第一 和第三列 取出某一列中包含_的列
$ awk 'BEGIN{FS = " "}{for (f=1; f <= NF; f+=1) {if ($f ~ /_/) {print NR,$f}}}' pride.txt >output
$ awk -F ' ' '{for (f=1; f <= NF; f+=1) {if ($f ~ /_/) {print $f}}}' result1 > file.out

grep 命令

grep表达式的格式:grep  [选项]  ”模式“  [文件]

常用选项

  • -E :开启扩展(Extend)的正则表达式。
  • -i :忽略大小写(ignore case)。
  • -n :显示行号

正则表达式

  • .              #匹配任意一个字符。
  • [abc]       #表示匹配一个字符,这个字符必须是abc中的一个。
  • [a-zA-Z]  #表示匹配一个字符,这个字符必须是a-z或A-Z这52个字母中的一个。
  • [^123]     #匹配一个字符,这个字符是除了1、2、3以外的所有字符。
  • [0-9]        #匹配一个数字
  • {m,n}       #匹配其前面出现的字符至少m次,至多n次。
  • ^        #锚定行首
  • $       #锚定行尾。^$  用于匹配空白行。
  • a|b         #匹配a或b,注意a是指 | 的左边的整体,b也同理。比如 C|cat 表示的是 C或cat,而不是Cat或cat,如果要表示Cat或cat,则应该写为 (C|c)at
grep key  file.txt #输出file.txt包含key的行

tr 命令

用于转换或删除文件中的字符。

tr  -d '\t'  #删除文件中'\t'字符
tr -s ' ' '\n':缩减连续的空格为换行符
cat testfile |tr a-z A-Z #将文件中的小写字符转化为大写字符

wc命令

一般是统计行数或者是字数

-c  只显示Bytes数。
-l 只显示行数。
-w 只显示字数。

文件拷贝命令

scp [可选参数] 源文件 目标文件
scp -r /home/steve/music/ antonio@172.168.13.34:/home/antonio/file 将本地文件夹music拷贝到远程file路径下
scp -r antonio@172.168.13.34:/home/antonio/file /home/steve/music/ 将远程文件file拷贝到本地文件夹music下 cp -r source target

查看目录相关操作

du -sh * #查看当前目录下各个文件及各目录占用空间大小 
du -sh #查看当前文件夹占用大小
df -f #查看硬盘大小及使用情况
ll |wc -l #计算文件的数量
 

其他命令

wget link #下载文件
ps -ef| grep get_mp3.py #打印get_mp3.py进程的信息

解压

*.tar 用 tar –xvf 解压
*.tar.gz和*.tgz 用 tar –xzf 解压
*.tar.bz2用tar –xjf 解压
*.tar.Z 用tar –xZf 解压
*.rar 用 unrar e解压
*.zip 用 unzip 解压

压缩

zip -r 1.zip  *to #压缩以to结尾的文件,压缩文件名为1.zip,递归压缩当前目录下的文件

linux shell脚本命令的更多相关文章

  1. linux 基础 shell脚本命令

    #########shell脚本命令#### 1.diff diff file file1 ####比较两个文件的不同 -c ####显示周围的行 -u ####按照一格式统一输出生成补丁 -r ## ...

  2. Linux Shell脚本入门--cut命令

    Linux Shell脚本入门--cut命令 cut cut 命令可以从一个文本文件或者文本流中提取文本列. cut语法 [root@www ~]# cut -d'分隔字符' -f fields &l ...

  3. Linux Shell脚本入门--wget 命令用法详解

    Linux Shell脚本入门--wget 命令用法详解 wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能 ...

  4. linux shell 脚本攻略学习20--awk命令入门详解

    awk生于1977年,创始人有三个,分别为 Alfred Aho,Peter Weinberger, 和 Brian Kernighan,名称源于三个创始人的姓的首字母. 作用:处理文本文件. awk ...

  5. Linux shell脚本编程(二)

    Linux shell脚本编程(二) 练习:求100以内所有偶数之和; 使用至少三种方法实现; 示例1: #!/bin/bash # declare -i sum=0 #声明一个变量求和,初始值为0 ...

  6. Linux shell脚本编程(一)

    Linux shell脚本编程: 守护进程,服务进程:启动?开机时自动启动: 交互式进程:shell应用程序 广义:GUI,CLI GUI: CLI: 词法分析:命令,选项,参数 内建命令: 外部命令 ...

  7. Linux Shell 脚本入门

    linux shell 脚本格式 #!/bin/sh#..... (注释)命令...命令... 使用vi 创建完成之后需设置权限 chmod +x filename.sh 执行命令: ./filena ...

  8. Linux Shell脚本攻略 读书笔记

    Linux Shell脚本攻略 读书笔记 这是一本小书,总共253页,但内容却很丰富,书中的示例小巧而实用,对我这样总是在shell门前徘徊的人来说真是如获至宝:最有价值的当属文本处理,对这块我单独整 ...

  9. 阿里Linux Shell脚本面试25个经典问答

    转载: 阿里Linux Shell脚本面试25个经典问答 Q:1 Shell脚本是什么.它是必需的吗? 答:一个Shell脚本是一个文本文件,包含一个或多个命令.作为系统管理员,我们经常需要使用多个命 ...

随机推荐

  1. Druid-代码段-4-1

    所属文章:池化技术(一)Druid是如何管理数据库连接的? 本代码段对应主流程4,丢弃连接的守护线程: //连接池瘦身,参考主流程4 public class DestroyConnectionThr ...

  2. eclipse拉取git项目 Read timed out after 30,000 ms

    点击 eclipse -> Window -> Preferences -> Team ->git   在git选项里有Remote connection timeout ,默 ...

  3. thinkphp5.1单模块设置

    thinkphp5.1单模块 1. // 是否支持多模块'app_multi_module' => false, // 自动搜索控制器'controller_auto_search' => ...

  4. js 的cookie问题

    获取时解码可以用decodeURIComponent(),代替 unescape() // 设置cookiefunction setCookie(name,value) { var Days = 30 ...

  5. 【Linux命令】nohup命令用法

    nohup命令用法 当我们想将某个脚本或程序运行在后台的时候.我们一般会在程序或脚本后面添加 & 字符来表示在后台运行,但使用& 运行在后台,当我们将shell窗口关闭时,该脚本或程序 ...

  6. ModelAndView重定向带参数解决方法

    业务场景:SpringMVC项目使用ModelAndView进行重定向跳转到另外一个action时,需要在url后面带上参数 如果是带参数带一个页面,直接用modelAndView.addObject ...

  7. Spark Streaming Listener 监控批次处理延迟进行告警

    概述 StreamingListener 是针对spark streaming的各个阶段的事件监听机制. StreamingListener接口 //需要监听spark streaming中各个阶段的 ...

  8. 2019-6-5-WPF-拼音输入法

    原文:2019-6-5-WPF-拼音输入法 title author date CreateTime categories WPF 拼音输入法 lindexi 2019-6-5 17:6:58 +08 ...

  9. python读取Excel的值

    上代码: import pandas as pd if __name__ == '__main__': #默认的读取第一个sheet df = pd.read_excel("E:\\MyPr ...

  10. go-面向对象编程(上)

    一个程序就是一个世界,有很多对象(变量) Golang 语言面向对象编程说明 1) Golang 也支持面向对象编程(OOP),但是和传统的面向对象编程有区别,并不是纯粹的面向对 象语言.所以我们说 ...