shell特殊符号,wc,uniq,tee_tr_split命令

本文涉及的产品
转发路由器TR,750小时连接 100GB跨地域
简介:

[root@abinlinux ~]# cut -d: -f 3 /etc/passwd   -d:分隔符    -f 加数字第几段     f是第几段

0

1

2

[root@abinlinux ~]# cut -d: -f 3,4,5,6,7 /etc/passwd  可以多选几段加,号就可以

0:0:root:/root:/bin/bash

1:1:bin:/bin:/sbin/nologin

2:2:daemon:/sbin:/sbin/nologin

3:4:adm:/var/adm:/sbin/nologin

[root@abinlinux ~]# cut -c 10 /etc/passwd    -c是第几个字符    c10就是第十个字符

0

:

2

[root@abinlinux ~]# cut -c 1-10 /etc/passwd    第一个到第十个  字符  -c是区间第几个

root:x:0:0

bin:x:1:1:

daemon:x:2



[root@abinlinux ~]# sort /etc/passwd    默认排序  阿斯玛排序

adm:x:3:4:adm:/var/adm:/sbin/nologin

apache:x:48:48:Apache:/var/www:/sbin/nologin

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

[root@abinlinux ~]# sort -t: -k3 /etc/passwd     -t:是分隔符  -k3 是第三段  排序

root:x:0:0:root:/root:/bin/bash

uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin

operator:x:11:0:operator:/root:/sbin/nologin

bin:x:1:1:bin:/bin:/sbin/nologin

[root@abinlinux ~]# sort -t: -k3 -n /etc/passwd   -n 按数字排序   也可以-k 3,6  区间值

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

[root@abinlinux ~]# sort -t: -k3,5 -n -r /etc/passwd      -r 是反序

yun:x:500:500::/home/yun:/bin/bash

saslauth:x:499:76:Saslauthd user:/var/empty/saslauth

bin:x:1:1:bin:/bin:/sbin/nologin

root:x:0:0:root:/root:/bin/bash

[root@abinlinux ~]# sort -t: -k 3,5 -n -r -u /etc/passwd   -u是去重复的 意思

sort -un 2.txt       也可以这样用


[root@abinlinux ~]# uniq -c 2.txt       加选项 -c 列出重复

1 1

1 2

1 3

2 4

1 5

2 6

1 7

2 8

2 9

[root@abinlinux ~]# sort 2.txt |uniq -c   排下序在去去重复

1 1

1 10

1 12

1 1212

1 12166

1 2

1 3

2 4

1 5

2 6

1 7

2 8

2 9

[root@abinlinux ~]# echo "1111111"  |tee 1.txt   tee的用法

1111111

[root@abinlinux ~]# echo "1111111"  |tee 1.txt

1111111

[root@abinlinux ~]# cat 1.txt

1111111


[root@abinlinux ~]# ls *.txt |tr 'a-z' 'A-Z'    .txt变成大写 字母名字变成大写  tr替换字符

1.TXT

2.TXT

C.TXT

M.TXT

Z.TXT

[root@abinlinux ~]# echo $ "jksadhasjkdh" |tr 'j' 'E'     替换大小写 字符

$ EksadhasEkdh

[root@abinlinux ~]# echo "jksadhasjkdh" |tr 'j' 'E'

EksadhasEkdh

[root@abinlinux ~]# echo "jksadhasjkdh" |tr 'a-z' 'A-Z'  全局替换     也可以范围缩小 ‘a-f’

JKSADHASJKDH

split  切割日志的

[root@abinlinux ~]# split -l 10 anaconda-ks.cfg      -l分多少行

[root@abinlinux ~]# ls

12               c.txt                   link     xaa   xab  

12.tar           install.log             m.txt    xac  

1.txt            install.log.syslog      wps     xad

[root@abinlinux ~]# du -sb anaconda-ks.cfg    查看大小

1028    anaconda-ks.cfg

[root@abinlinux ~]# split -b 100 anaconda-ks.cfg        -b 以100b切割

[root@abinlinux ~]# ls -lh xa*

-rw-r--r-- 1 root root 100 10月 27 07:53 xaa

-rw-r--r-- 1 root root 100 10月 27 07:53 xab

-rw-r--r-- 1 root root 100 10月 27 07:53 xac

-rw-r--r-- 1 root root 100 10月 27 07:53 xad

-rw-r--r-- 1 root root 100 10月 27 07:53 xae

-rw-r--r-- 1 root root 100 10月 27 07:53 xaf

-rw-r--r-- 1 root root 100 10月 27 07:53 xag

-rw-r--r-- 1 root root 100 10月 27 07:53 xah

-rw-r--r-- 1 root root 100 10月 27 07:53 xai

-rw-r--r-- 1 root root 100 10月 27 07:53 xaj

-rw-r--r-- 1 root root  28 10月 27 07:53 xak

[root@abinlinux ~]# split -b 100 anaconda-ks.cfg  new_      更改名字  new

[root@abinlinux ~]# ls

12                      link    new_ai   xaf

12.tar                  m.txt   new_aj   xag

1.txt                   new_aa  new_ak   xah

2.txt                   new_ab  wps      xai

anaconda-ks.cfg         new_ac  wps.zip  xaj


&&  并且  ||或者

[root@abinlinux ~]# ls 1.txt && ls 2.txt         能够执行第一个才会执行第二个

1.txt

2.txt

[root@abinlinux ~]# ls 1.txt && ls 20.txt     前面的命令执行成功才会执行后面的命令

1.txt

ls: 无法访问20.txt: 没有那个文件或目录

[root@abinlinux ~]# ls 10.txt && ls 2.txt    如果前面的命令没有执行成功 它不再执行后面的命令

ls: 无法访问10.txt: 没有那个文件或目录

[root@abinlinux ~]# ls 1.txt || ls 2.txt

1.txt

[root@abinlinux ~]# ls 10.txt || ls 20.txt

ls: 无法访问10.txt: 没有那个文件或目录

ls: 无法访问20.txt: 没有那个文件或目录

[root@abinlinux ~]# ls 10.txt || ls 2.txt

ls: 无法访问10.txt: 没有那个文件或目录

2.txt

&& 左边的命令执行成功后,才会执行右边的命令

||左边的命令执行不成功,才会执行右边的命令

;   左边的命令成功与否,后面命令都会执行




本文转自 amenging 51CTO博客,原文链接:http://blog.51cto.com/11335852/1982959
相关文章
|
11天前
|
安全 Shell 数据处理
使用Python执行Shell命令并获取结果
在实际应用中,可以根据需要选择适当的参数和方法来执行Shell命令,并处理可能出现的各种情况。无论是系统管理、自动化任务还是数据处理,掌握这些技巧都将极大地提高工作效率。
37 12
|
2月前
|
人工智能 Shell iOS开发
AI Shell:在命令行里“对话” AI ,微软推出将 AI 助手引入命令行的 CLI 工具,打造对话式交互命令行
AI Shell 是一款强大的 CLI 工具,将人工智能直接集成到命令行中,帮助用户提高生产力。AI Shell 支持多种 AI 模型和助手,通过多代理框架提供丰富的功能和灵活的使用模式。
201 7
|
2月前
|
Java Shell Windows
java Runtime.exec()执行shell/cmd命令:常见的几种陷阱与一种完善实现
java Runtime.exec()执行shell/cmd命令:常见的几种陷阱与一种完善实现
61 1
|
3月前
|
Web App开发 网络协议 Linux
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
这篇文章是关于Linux命令的总结,涵盖了从基础操作到网络配置等多个方面的命令及其使用方法。
87 1
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
|
3月前
|
Shell 知识图谱
Shell printf 命令
10月更文挑战第3天
30 1
|
3月前
|
Shell
一个用于添加/删除定时任务的shell脚本
一个用于添加/删除定时任务的shell脚本
127 1
|
2月前
|
Shell Linux 测试技术
6种方法打造出色的Shell脚本
6种方法打造出色的Shell脚本
74 2
6种方法打造出色的Shell脚本
|
2月前
|
XML JSON 监控
Shell脚本要点和难点以及具体应用和优缺点介绍
Shell脚本在系统管理和自动化任务中扮演着重要角色。尽管存在调试困难、可读性差等问题,但其简洁高效、易于学习和强大的功能使其在许多场景中不可或缺。通过掌握Shell脚本的基本语法、常用命令和函数,并了解其优缺点,开发者可以编写出高效的脚本来完成各种任务,提高工作效率。希望本文能为您在Shell脚本编写和应用中提供有价值的参考和指导。
84 1
|
2月前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
78 2