linux 备忘记录

杂项记录

  • Ubuntu 通过/etc/network/interfaces修改IP,重启网络服务貌似也不会生效。可以重启电脑使其生效,或执行:

    ip addr flush dev ens33 && systemctl restart networking 
    
  • 生成随机字符/数字..

    • 利用linux 内置变量$RANDOM, 该变量会随机输出0-32767范围的数字。
    随机输出0-255范围的数字
    echo `expr $RANDOM / 128`
    
    随机输出1-255范围的数字
    echo `expr $RANDOM / 129 + 1`
    
  • tar 打包指定目录(相对路径)

    使用tar打包文件/目录再解压时会显示“绝对路径”。例:现在打包/etc/sysconfig//var/log两个目录

    [root@bogon tmp]# tar -zcpf test.tgz /etc/sysconfig /var/log
    [root@bogon tmp]# tar -zxf test.tgz 
    [root@bogon tmp]# ls
    etc  test.tgz  var
    

    可以看到tar是按绝对路径打包的。要想打包只有sysconfiglog两个目录,使用-C参数

    [root@bogon tmp]# tar -zcpf test.tgz -C /etc sysconfig -C /var log
    [root@bogon tmp]# tar -zxf test.tgz 
    [root@bogon tmp]# ls
    log  sysconfig  test.tgz
    
  • sed字符串大小写转换

    大写转小写:echo 'ABC' | sed 's/[A-Z]/\l&\g'
    小写转大写:echo 'abc' | sed 's/[a-z]/\u&\g'
    
  • sed 多次替换

    示例,将字符串ABcd3+4/ZZ大写转为小写,并删除标点符号([:punct:]是标点符号的集合):

    $ echo 'ABcd3+4/ZZ' | sed 's/[0-9]//g;s/[A-Z]/\l&/g;s/[[:punct:]]//g'
    abcdzz
    
posted @ 2018-06-23 11:35  Pyerlife  阅读(183)  评论(0编辑  收藏  举报