xargs,rename,cut,seq,bc,cal,权限

xargs命令

[root@oldboyedu oldboy]# cat file
a b c d
e f g h i j k
l m n o p q
r s t u v w
x y z
[root@oldboyedu oldboy]# cat file | xargs
a b c d e f g h i j k l m n o p q r s t u v w x y z

  • xargs的默认命令是echo,空格是默认定界符。这意味着通过管道传递给xargs的输入会包含换行和空白。不过通过xargs的处理,换行和空白将被空格取代

将分行处理掉不是echo实现的,而是管道传递过来的stdin经过xargs处理后的:将所有空格、制表符和分行符都替换为空格并压缩到一行上显示,这一整行将作为一个整体,这个整体的所有空格属性继承xargs处理前的符号属性,即原来是文本意义的或标记意义的在替换为空格后符号属性不变。这个整体可能直接交给命令或者作为stdout通过管道传递给管道右边的命令,这时结果将作为整体传递,也可能被xargs同时指定的分批选项分批处理。

  • -n

-n选项,指定 输出时每行输出的列数

  • -d选项,自定义列分割符

[root@oldboyedu oldboy]# echo “a/b/c#d/e/f” | xargs -d/
a b c#d e f

  • -o

-o选项相当于就是用来告诉xargs文件的结束标志已经改成NULL
[root@oldboyedu oldboy]# find . -name “hello*” -print0 | xargs -0 rm

  • -i(-I)

xargs要处理的文件如果不是在结尾,需要加上 -i这个参数
find /var/log/*.log -type f | xargs -i cp {} /home/omc/ftl
在/var/log/下查找log文件,复制文件到/home/omc/ftl且把结果保存到/home/omc/ftl/logs.txt文件中
使用xargs -i时以大括号{}作为替换符号,传递的时候看到{}就将被结果替换。可以将{}放在任意需要传递的参数位上,如果多个地方使用{}就实现了多个传递。

xargs -I(大写字母i)和xargs -i是一样的,只是-i默认使用大括号作为替换符号,-I则可以指定其他的符号、字母、数字作为替换符号,但是必须用引号包起来。man推荐使用-I代替-i,但是一般都图个简单使用-i,除非在命令中不能使用大括号,如touch {1…1000}.log时大括号就不能用来做替换符号。

rename 命令

[root@oldboyedu oldboy]# rename txt py 9.txt
#单个文件重命名
[root@oldboyedu oldboy]# rename txt py *
#多个文件重命名
rename p1 p2 p3
p1: 可以理解为将被替换的串
p2: 可以理解为将替换成的串
p3: 用于选择哪些文件被替换

cut 命令

  • -f cut -f 1 test.txt
    cut -f2,3 test.txt #选出指定字段(指定列)
  • -dcut -f2 -d";" test2.txt
    #使用 -d 选项指定字段分隔符:
    cut -f2 - - complement test.txt
    #–complement 选项提取指定字段之外的列(打印除了第二列之外的列)
    cut -c1-3 test.txt #打印第1个到第3个字符
    cut -c-2 test.txt # 打印前2个字符
    cut -c5- test.txt
    #打印从第5个字符开始到结尾
  • “N-”、“N-M"和”-M"分别表示每行N字符(或字节或字段)后的所有内容、N-M段内容和M段之前的内容。注意包括N和M的边界
    • 范围交叉时,不会重复输出。比如-f3-5,4-6,则输出-f3-6
  • 如果范围顺序无序,则Linux会先对范围排序(升序)再输出。例如-f4-6,2等价于-f2,4-6

seq命令

seq 5
1
2
3
4
5
seq 默认的间隔符为“/n" 换行符
seq -2 2 10 #seq [选项] 首数 增量 尾数
seq -f “%03g” 98 101 #注意:通过%后添加0替代空格补足空位
seq -w 98 101 #输出98~100之间的整数,要求宽度一致,注意:-w选项不能和-f选项一起用,输出是同宽的

  • -s 修改间隔符

[root@oldboyedu tmp]# seq -s “#” 5
1#2#3#4#5(横着输出)

bc 命令

需安装 yum install bc
输入 :bc
进入计算机
输入 quit
退出计算机

cal命令

cal
cal 2016
cal -3

last,lastlog命令

  • last
    统计系统所有用户的登录时间和信息,包括系统曾经进行过重启操作的重启时间信息。这是一个重要的日志查询命令。通过查看系统重启信息可以方便用户了解系统是否非正常重启了,或者是被他人登录重启了。
  • lastlog
    检查最后一次登录本系统的用户登录的时间信息#lastlog -u 500 通过UID查看指定用户的登录信息

su,sudo

su #su只是切换了root身份,但Shell环境仍然是普通用户的Shell;
su - #su -连用户和Shell环境一起切换成root身份了
sudo cat /etc/shadow
visudo或者进入/etc/sudoers编辑

第一列第二列第三列注释
rootALL=(ALL)ALL# (All)表示允许用户以哪个用户的权限做事情
omdALL=(ALL)ALL# omd用户在任何机器上,可以只需任何用户的任何命令 == root用户
omdALL=(ALL)NOPASSWD: ALL# 免密而且omd用户在任何机器上,可以只需任何用户的任何命令
ftlALL=(ALL)/bin/cp,/bin/touch,/usr/bin/cat# 只允许ftl用户只需root用户的cp,touch命令
alexALL=(ALL)/usr/bin/*,!/usr/bin/su
alexALL=(ALL)/usr/bin/ls,/usr/bin/less# 执行 sudo cat /etc/shadow

#现在公司基本不用sudo,有了jumpserver(跳板机,堡垒机)就可给权限的同事(记录用户操作情况,会把你所执行的代码记录下来)

记录用户的操作 行为/日志审计)

  • 齐治的堡垒机:商业产品
  • gateone web跳板机
  • python开发的开源的跳板机产品(开源jumpserver部署 >https://jumpserver.readthedocs.io/zh/master/#)
  • shell 跳板机
  • 企业用户及密码管理
    用户及密码管理

权限

文件最大权限666
目录最大权限777
系统默认权限umask对于文件,当包含基数(umask中的数位0022,第一个零代表args命令
文件最大权限666>目录最大权限777>系统默认权限umask对于文件,当包含基数(umask中的数位0022,第一个零代表特殊位)时,最高权限666-unmak值+1,包含偶数时666-umask
umask对于目录,最高权限777-umask
-p:打印当前umask值
-S:显示当前掩码
mode:设置为umask值

目录: 直接相减接口

文 件: 遇到基数的位,相减的结果+1

     假设当前的umask为 032              --> 适用于文件 文件最大666 【如果遇到umask有奇数位,则相减的结果+1】

            6 6 6              6 6 6
            0 3 2 -            0 5 1 -
              1    +              1 1 +
               ------            --------
            6 4 4              6 2 6

   ----------------------------------------------------------------------------------------

            777                                           -->  文件最大777,正常加减即可
            032
               ------
            745  

对于文件RWX的含义测试
#r对于文件的作用?
可读
vim编辑可强制保存退出
#w对于文件的作用?
可追加内容 不允许查看 不允许删除和改名 不可执行 vim强制写入会覆盖源文件
和r配置可修改文件内容
#x对于文件的作用?
对文件没任何作用
必须和r配置使用才可执行

  • 对目录RWX的含义测试
    #r 对于目录的作用?
    不能cd进入目录
    只能查看目录下的文件名 不允许查看详细信息
    #w 对于目录的作用?
    没有任何权限
    需要和x权限配合 目录内可创建 删除 改名 可追加内容 如果使用vim 则强制保存退出
    #x 对于目录的作用?
    控制是否可进入目录
  • 授权1.txt 属主rw- 属组–x 其他-w-
  • 在原有权限上增加某个权限
  • 在原有权限上去掉某个权限
    = 先清空原有权限,重新定义权限
    a= 表示同时修改属主 属组和其他用户权限
    chmod u=rw,g=x,o=w 1.txt
    权限分析

在这里插入图片描述

网站权限

  • 网站程序存放的位置
  • 网站要通过什么用户来运行
  • 目录要什么权限
    权限
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值