shell 特殊符号介绍

8.10 shell特殊符号&cut命令

特殊符号

  • “*” 代表零个或多个字符

  • “?” 代表一个字符
  • “#” 注释符号
  • “\” 脱意符号
  • “|” 管道符
  • “$” 该符号与“!”合用“!$”表示上一条命令中的最后一个变量
  • “;” 分隔符,在一行中运行两个及两个以上的命令时使用
  • “~” 用户的家目录(root用户“/root”,普通用户“/home/username”)
  • “&” 如果想把一条命令直接放到后台运行的话,可以在命令行加上这个符号(通常用于运行时间非常长的命令)
  • “[]” 中括号中间为字符组合,代表中间字符中的任意一个。

cut命令

cut命令用来显示行中的指定部分,删除文件中指定字段。cut经常用来显示文件的内容,类似于下的type命令。
说明:该命令有两项功能,其一是用来显示文件的内容,它依次读取由参数file所指明的文件,将它们的内容输出到标准输出上;其二是连接两个或多个文件,如cut fl f2 > f3将把文件fl和几的内容合并起来,然后通过输出重定向符“>”的作用,将它们放入文件f3中。

语法: cut -d ‘分隔符’ [-cf] n [filename] (这里n是正整数)
-d:指定分隔符号
-f:指定第几段
-c:后面只有一个数字表示截取第几个字符;后面跟一个数字区域,表示截取从几到几(该选项不和d,f共同使用)

[[email protected] tmp]# cut -c1 1.txt |head -n2r
b
[[email protected] tmp]# cut -c1,3 1.txt |head -n2ro
bn
[[email protected] tmp]# cut -f1,3 -d ':' 1.txt |head -n2root:0bin:1[[email protected] tmp]# cut -f1-3 -d ':' 1.txt |head -n2root:x:0bin:x:1

8.11 sort、wc、uniq命令

sort命令

sort命令是在Linux里非常有用,它将文件进行排序,并将排序结果标准输出。sort命令既可以从特定的文件,也可以从stdin中获取输入。

语法: sort [-t 分隔符] [options] [filename]
Options:
-t:指定分隔符
-n:使用纯数字排序(系统默认所有字母为0)
-r:反向排序
-u:=unique 去重复
-kn1,n2:由n1区间排序到n2区间,可以只写-kn1,即对n1字段排序(n1 < n2)
sort不加任何选项,则从首字符向后,依次以ASCⅡ码值进行比较,最后将它们按升续输出。

[[email protected] tmp]# head -n3 1.txtroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologin[[email protected] tmp]# head -n3 1.txt |sortbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinroot:x:0:0:root:/root:/bin/bash

wc命令

wc命令用来计算数字。利用wc指令我们可以计算文件的Byte数、字数或是列数。

语法: wc [options] [filename]
Options:
-l:=line 统计行数
-m:=member 统计字符数
-w:=Word 统计词数

[[email protected] tmp]# wc -l !$wc -l 2.txt2 2.txt
[[email protected] tmp]# wc -m 2.txt10 2.txt
[[email protected] tmp]# cat !$cat 2.txt1234qwer
[[email protected] tmp]# cat -A 2.txt1234$qwer$[[email protected] tmp]# wc -w 2.txt4 2.txt
[[email protected] tmp]# cat 2.txt1234 456 789,10qwer

说明: wc -m会统计文件内所有字符,包括隐藏的换行符“&”;wc -w是以空格作为分隔符进行词组统计的。

uniq命令(unique)

uniq命令用于报告或忽略文件中的重复行,一般与sort命令结合使用(即:去重复)。

语法: uniq [options] [filename]
Options:
-c:=count 在每列旁边显示该行重复出现的次数

[[email protected] tmp]# cat !$cat 2.txt1234456 789,101234qwer456[[email protected] tmp]# uniq -c 2.txt
      1 1234
      1 456 789,10
      1 1234
      1 qwer      1 456[[email protected] tmp]# sort 2.txt |uniq -c
      2 1234
      1 456
      1 456 789,10
      1 qwer

说明: 直接使用uniq命令,2.txt内容显示并没有变化,使用sort排序后再用uniq命令,重复行被合并,即:在对文件进行去重之前需要先进行排序!

8.12 tee、tr、split命令

tee命令

tee命令用于将数据重定向到文件,会删除文件内原有内容,与“>”不同的是,tee会把定向的文件内容显示出来。

语法: tee [options] [filename]
Options:
-a:向文件中重定向时使用追加模式(=“>>”)

[[email protected] tmp]# cat 3.txt00000000000[[email protected] tmp]# sort 2.txt |uniq -c |tee 3.txt
      2 1234
      1 456
      1 456 789,10
      1 qwer
[[email protected] tmp]# cat 3.txt
      2 1234
      1 456
      1 456 789,10
      1 qwer
      [[email protected] tmp]# sort 2.txt |uniq -c |tee -a 3.txt
      2 1234
      1 456
      1 456 789,10
      1 qwer
[[email protected] tmp]# cat 3.txt
      2 1234
      1 456
      1 456 789,10
      1 qwer      2 1234
      1 456
      1 456 789,10
      1 qwer

tr命令

tr命令可以对来自标准输入的字符进行替换、压缩和删除,它可以将一个字符变成另一个字符,也可以将一组字符变成另一组字符。

语法: tr [源字符] [目标字符]

[[email protected] tmp]# echo "adailinux" |tr 'a' 'A'AdAilinux   替换一个字符
[[email protected] tmp]# echo "adailinux" |tr '[al]' '[AL]'AdAiLinux   替换多个字符
[[email protected] tmp]# echo "adailinux" |tr '[a-z]' '[A-Z]'ADAILINUX

split命令

split命令可以将一个大文件分割成很多个小文件,有时需要将文件分割成更小的片段,比如为提高可读性,生成日志等。

语法: split [options] [filename]
-b:指定每一输出档案的大小,默认单位为 byte,可自定义单位,如 split -b 100M filename
-l:指定每一个输出档案的行数多少
eg1: 指定大小

[[email protected] tmp]# split -b 100 1.txt[[email protected] tmp]# lsxaaxabxacxad[[email protected] tmp]# rm -rf x*[[email protected] tmp]# split -b 100 1.txt adai.  
可以指定文件前缀![[email protected] tmp]# lsadai.aa adai.abadai.acadai.ad

eg2: 指定行数

[[email protected] tmp]# wc -l 1.txt20 1.txt
[[email protected] tmp]# split -l 5 1.txt[[email protected] tmp]# lsxaa
xab
xac
xad
[[email protected] tmp]# wc -l x*
  5 xaa  5 xab  5 xac  5 xad 20 总用量

8.13 shell特殊符号(下)

命令连接符: “||”、“&&”、“;”

  • command1 ; command2 : 不管command1是否执行成功都会执行command2
  • command1 && command2 : 只有command1执行成功后才会执行command2
  • command1 || command2 : 表示command1执行成功后,command2不执行,否则执行command2

原文地址:http://blog.51cto.com/yuanhaohao/2060433

时间: 2024-08-02 04:23:41

shell 特殊符号介绍的相关文章

linux shell中的比较符号与特殊符号介绍

shell字符串比较.判断是否为数字  二元比较操作符,比较变量或者比较数字.注意数字与字符串的区别.  整数比较  -eq 等于,如:if [ "$a" -eq "$b" ]  -ne  不等于,如:if [ "$a" -ne "$b" ]  -gt 大于,如:if [ "$a" -gt "$b" ]  -ge 大于等于,如:if [  "$a" -ge "

linux的cut、sort_wc_uniq、tee_tr_split命令及一些特殊符号介绍

shell特殊符号cut命令: 1.* 任意个任意字符(这是一个通配符) 2.? 任意一个字符 3. # 注释字符 4. \ 脱义字符 5. | 管道符 几个和管道有关的命令: 1.cut 分割,-d 分隔符  -f 指定段号   -c 指定第几个字符, 示例: [[email protected] ~]# cat /etc/passwd |head root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x

2018.4.21 五周第四次课(shell特殊符号,cut截取等命令)

shell特殊符号_cut命令 概念:cut命令用来截取某一个字段 格式:cut -d '分割字符' [-cf] n,这里的n是数字,该命令选项有如下几个: - d 后面跟分割字符,分割字符要用单引号括起来 - c 后面接的是第几个字符 - f 后面接的是第几个区块 cut命令用法如下 [[email protected] do]# cat /etc/passwd |head -2root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/no

8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符号下

8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符号下 # 8.10 shell 特殊符_cut命令 --- - * 任意个任意字符 - ?任意一个字符 -  井号#注释字符  写命令的时候前面加一个#,那么这条命令就不生效,包括shell脚本里面也是,前面加个#表示这一行不生效,可以加一些注释说明的文字 ``` <[email protected] ~># #ls a.txt <[email

shell特殊符号、cut命令、sort_wc_uniq命令、tee_tr_split命令、shell特殊符号下

shell特殊符号 * 任意个任意字符 [[email protected] ~]# ls *.txt 1.txt  23.txt  2.txt  david.txt ? 任意一个字符 [[email protected] ~]# ls ?.txt 1.txt  2.txt # 注释字符 [[email protected] ~]# #echo 'ok' \ 脱义字符 [[email protected] ~]# echo -e '123\n456\n789\t0000' 123 456 789

shell特殊符号、cut_sort_wc_uniq命令和tee_tr_split命令

shell特殊符号 * 任意个任意字符 ? 任意一个字符 # 注释字符 \ 脱义字符 | 管道符 $ 变量前缀 , !$ 组合,正则里面表示行尾 ; 多条命令写到一行,用分号分割 ~ 用户家目录,后面正则表达式表示匹配符 & 放到命令后面,会把命令丢到后台 > >> 2> 2>> &> [] 指定字符中的一个,[0-9],[a-zA-Z],[abc] || 和 && , 用于命令之间 cut_sort_wc_uniq命令 cut 分

8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee

五周第五次课 8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符号下 8.10 shell特殊符号cut命令 cut命令 8.11 sort_wc_uniq命令 sort-wc-uniq命令 特殊符号都会认为是0 sort -n  以数字排序 sort -n  默认排序 sort -rn 为倒序 wc 命令 uniq命令 原文地址:http://blog.51cto.com/wbyyy/2060163

shell特殊符号cut ,sort_wc_uniq,tee_tr_split命令shell特殊符号

8.10 shell特殊符号cut命令\ 脱义字符 管道符相关的几个命令cut -d命令的用法cut -c命令的用法sort经常要跟uniq结合使用sort的作 用是排序,先从特殊符号开始,再到数字,再到字母sort -n 会以数字排序,特殊符号与字母都会被认为是0sort -nr 1.txt跟上面返过来排序wcvim 2.txt 输入123换行abc,查询的结果是8个字符,包括了换行符号uniq去重,是先排序再去掉重复的tee的用法tee -a 表示追加tr 的用法tr 把字母改为数字,数字只

五周第五次课(1月12日) 8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符号

五周第五次课(1月12日)8.10 shell特殊符号cut命令8.11 sort_wc_uniq命令8.12 tee_tr_split命令8.13 shell特殊符号相关测验题目:http://ask.apelearn.com/question/5437 扩展1. source exec 区别 http://alsww.blog.51cto.com/2001924/1113112 2. Linux特殊符号大全http://ask.apelearn.com/question/7720 3. so