linux系统之核心命令

tr(transform)

作用

字符串替换功能

命令

tr "被替换的内容" "替换成"
tr "0" "a" <11.txt    读不了,输入重定向
tr -d "a" <11.txt    删除文件内的所有a(delete)
tr -d "a-z" <11.txt    批量去重,"a-z"所有小写字母
tr -s "abc" <11.txt    连续字符去重(aaabbbccc
去重后为abc),a,b或c连续的重复,变为一个a,b,c(--squeeze-repeats)

tr "a-z" "A-Z" <11.txt    所有小写换成大写

cut

作用

文本切割截取字符串

命令

cut -b 1-3 1.txt       截取一行的第几个到第几个字符, (一个英文数字占一个字节)(bytes)

tac

tac 文件

倒着显示文件内容

nc

作用

支持绑定端口,进行监听,和其他机器通信

命令

nc -l -p4444    开启监听(listen监听模式)
nc ip 端口        连接监听

-l:--listen,监听模式,用于服务器端。
-p:--port,指定端口。
-s:--source,指定源 IP 地址。
-v:--verbose,详细输出。
-u:--udp,使用 UDP 协议而不是 TCP 协议。
-n:--numeric,不进行域名解析,直接使用 IP 地址。
-w:--timeout,设置超时时间。

sort

作用

排序

命令

sort <1.txt 每行首字母按照26英文字母大小写在一起排序,(读不了,输入重定向)

sort -n <1.txt 以开头字符排序,字母在前,数字靠后

uniq

作用

去重

命令

uniq <1.txt     将相邻行的重复行去重
uniq -c <1.txt    统计合并了几个(count)
sort <1.txt | uniq -c  先排序后去重,去除重复行

wc

作用

数据统计功能

命令

ls | wc cat 11.txt |wc -c 统计字符个数(bytes)

cat 11.txt | wc -l 统计行数(lines)

ls |wc -w 统计字符串个数

管理压缩包

rar

安装rar

yum install -y http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm

yum install unrar -y

解压

unrar x 压缩包 解压缩包

unrar x 压缩包 /data  #指定解压路径

zip

安装管理工具

yum install zip unzip -y

添加压缩包

zip 压缩包名 被压缩的文件(多个文件空格分开)

解压zip包

unzip 文件 unzip 文件

        -d 目录 解压到指定目录(directory)

tar

介绍

linux默认压缩,效果好

压缩打包

tar zcvf 压缩包名字 被压缩文件1 文件2    #压缩包名字必须为···.tar.gz

        z开启高压缩模式

        c创建压缩包

        v显示过程

        f指定存放压缩包路径,参数f后面必须接路径名称

注意

  • 压缩文件通常会把文件路径的开头的/删除
  • 加参数P就不删除
  • 压缩时尽量通过相对路径压缩(避免暴露绝对路径和方便解压)

查看包内容

tar tf 压缩包名

解压包

tar xvf 压缩包名

        -c 指定解压到哪 directory DIR

        --exclude 排除指定文件(压缩和解压都可以使用)

历史命令记录

history

history -c 清空历史记录

只显示本终端的历史记录

优化

定义history日志

mkdir /var/log/history/
vim /etc/profile

export HISTORY_FILE=/var/log/history/.`date '+%Y%m'`.log
 
export PROMPT_COMMAND='{ date "+%Y-%m-%d %T ##### $(who am i |awk "{print \$1\" \"\$2\" \"\$5}")  #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >> $HISTORY_FILE'

屏蔽history记录

set +o history

set -o history

find查找

find /(从哪找) 参数

按照文件名查找

查找/etc/所有.conf文件

find /etc/ -name "*.conf"   包含多级目录的conf,区分大小写

按照类型查找

find /etc/ -type d -name "*conf*" 指定类型查找

        -type 判断类型

        f 文件

        d 目录

        b 存储

        c 外接设备

        l 软链接

按照大小查找

    -size 按照大小查找
+1M 大于1M  -1M小于1M
find / -size +900M            大于900M
find / -size +900M -size +1G       大于900M小于1G(不写就默认-a,a的简写为and )
find / -size -900M -o -size +1G      小于900M或大于1G(-o的简写为or)

按照时间查找

find / -mtime
    -mtime +3    三天以前修改的文件
    -mtime -3    三天以内修改的文件
find /-mmin  -3    最近三分钟内更改的文件
find /-mmin  +3    最近三分钟前更改的文件

find结合其他命令的使用

批量删除/tmp/超过100M的大文件

方式一

-exec 将find查找结果的文件给后面命令处理的目标

find /tmp/ -size +100M -exec rm -rf {} \;  #{}调用前面执行的结果,\;结束符号 exec参数,查到一个给一个

方式二

find /opt/ -name "a" |xargs rm -rf

#|xargs 前面弄完在给后面,结果默认放最后,效率比第一个快

练习

通过find查找/etc下名字包含host的文件,打包
find /etc/ -name "*host*" -type f |xargs tar zcvf host.rar.gz 
如果用第一种方式会覆盖
find /etc/ -name "*host*" -type f  -exec tar zcvf host.rar.gz {} \;
查找/etc/目录下,所有.conf后缀的文件
find /etc/ -type f -name  "*.conf"

将上题中找到的所有conf文件,使用tar命令打包到/tmp目录下
find /etc/ -type f -name "*.conf" |xargs tar zcvf /tmp/caa.tar.gz 
  • 8
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值