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. 我的第一个Mybatis项目搭建

    1.新建maven项目,目录如下.第一个坑idea目录和eclipse不一样project就像workspace pom文件 jdk版本有点高建议8.0 <?xml version=" ...

  2. 7.SourceTree 的使用

    SourceTree 是 Windows 和Mac OS X 下免费的 Git 和 Hg 客户端管理工具,同时也是Mn版本控制系统工具.支持创建.克隆.提交.push.pull 和合并等操作. 下载路 ...

  3. python直接赋值、浅拷贝、深拷贝的区别

    一:直接赋值 赋值,就是对象的引用,给对象起别名. i = 8j = iprint("值是:",i, "地址:",id(i))print("值是:&q ...

  4. Sigma Function (LightOJ - 1336)【简单数论】【算术基本定理】【思维】

    Sigma Function (LightOJ - 1336)[简单数论][算术基本定理][思维] 标签: 入门讲座题解 数论 题目描述 Sigma function is an interestin ...

  5. <Array> 309 (高)334

    309. Best Time to Buy and Sell Stock with Cooldown class Solution { public int maxProfit(int[] price ...

  6. golang数据结构之利用栈求计算表达式(加减乘除)

    例如:3+2*6-2 先定义两个栈,一个为数值栈,一个为运算符栈: stack.go package stack import ( "errors" "fmt" ...

  7. C语言程序设计100例之(7):级数求和

    例7    级数求和 题目描述 已知: Sn =1+1/2+1/3+…+1/n.显然对于任意一个整数 k,当 n 足够大的时候,Sn>k. 现给出一个整数 k,要求计算出一个最小的 n,使得 S ...

  8. 大话设计模式Python实现- 享元模式

    享元模式(Flyweight Pattern):运用共享技术有效地支持大量细粒度的对象. 下面是一个享元模式的demo: #!/usr/bin/env python # -*- coding:utf- ...

  9. #3145. 「APIO 2019」桥梁

    #3145. 「APIO 2019」桥梁 题目描述 圣彼得堡市内所有水路长度总和约 282 千米,市内水域面积占城市面积的 7%.--来自维基百科 圣彼得堡位于由 \(m\) 座桥梁连接而成的 \(n ...

  10. Flink on Yarn的两种模式及HA

    转自:https://blog.csdn.net/a_drjiaoda/article/details/88203323 Flink on Yarn模式部署始末:Flink的Standalone和on ...