• Linux九阴真经之催心掌残卷2


     硬链接

       硬链接的作用就是一个文件赋予它几个名字,每个相同的文件属性相同。但仅限于同一个分区,跨分区不可创建。

       创建硬链接 ln    例如  ln f1 f2    

     

     软链接

       软连接相当于一条网络连接, 且可以夸分区创建。创建方法:  ln -s    例 ln  -s  f1  f1.bak

                                                                  

      如在同一目录,前面的路径要写针对于软连接的相对路径  例 ls -n ../date/f2  /root/date/f2_link3

      确定文件

       -f filelist 列出文件filelist中文件名的文件类                                                                     
      -L 查看对应软链接对应文件的文件类型     file   -L   f2.blk

                                

     重定向文件  

       

    1 表示标准输出  cmd  >  /date/history.log(目录下的文件内)

    2 表示错误输出  cmd 2>  /date/history.log(目录下的文件内)

           

     > 把STDOUT重定向到文件

     >>追加内容,但不会覆盖

     2> 把STDERR重定向到文件

     &> 把所有输出重定向到文件

     标准输出和错误输出各自定向至不同位置

     COMMAND > /path/to/file.out 2> /path/to/error.out

        ls /abc(错误命令) /date(正确命令) >1  2>f2

     合并标准输出和错误输出为同一个数据流进行重定向 

     COMMAND > /path/to/file.out 2>&1 (顺序很重要)

     Ls /abc /date >f1 2>&1或 ls /abc /date &>f1

     

     tr命令

    tr 转换和删除字符
    tr [OPTION]... SET1 [SET2]

     例 tr  'abcd'  'ABCD' 将输入的的小写字母替换哼大写字母       tr  '源‘   ‘ 目的’ 

        

    tr  -d         删除字符 

    tr  -c         取反,排除要输入的字符 

    tr  -s         将连续的重复字符压缩成一个字符表示

    hexdump  -C +文件名    查看文件的八进制

    在linux可以直接用bc 进行计算

      tr ‘a-z‘‘A-Z’< /etc/issue   将issue文件里的小写字母转换成大写字母

      tr –d abc < /etc/fstab                      删除fstab文件中的所有abc中任意字符

     

    cat > file(单行重定向)
    mage
    wangxiaochun
    按ctrl+d离开,可以使用文件来代替键盘的输入

     

    <<’终止词‘  即多行重定向      cat  > aa <<end

    邮件重定向

    mail  -s  'hello'  laobai  <<end

     给多个用户发邮件,可将邮件内容创建好(mail.txt),再重定向给用户 ,且邮件内容可添加变量和命令

    mail -s 'Hello' laobai<mail.txt

     管道

    命令1 | 命令2 | 命令3 | …


    将命令1的STDOUT发送给命令2的STDIN,命令2的STDOUT发送到命令3的STDIN 

    如命令里有错误,可使用管道传递  ls /boot/aaa  2>&1  | tr 'a-z' 'A-Z' 或 ls /boot/aaa  |& tr 'a-z' 'A-Z'

    利用管道更改符号,例  df  |  tr -s  ' ' ':'(把空格改为:号)

    如何自动计算从1+到100等于几? 可以用管道实现

    echo {1..100} | tr ' ' '+' | bc(将数字之间的空格变为+号)

    或 seq  -s  +  1  100  | bc

    tee命令

    将文件重定向到文件后,结果是不会显示在屏幕上的,这时需要用到tee命令

    ls  |  tee  aaa.txt

     练习

       1、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中


    2、将当前系统登录用户的信息转换为大写后保存至/tmp/who.out文件中


    3、一个linux用户给root发邮件,要求邮件标题为”help”,邮件正文如下:
    Hello, I am 用户名,The system version is here,please help me to check it ,thanks!
    操作系统版本信息


    4、将/root/下文件列表,显示成一行,并文件名之间用空格隔开


    5、计算1+2+3+..+99+100的总和



    7、处理字符串“xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4”,只保留其中的数字和空格

    echo ”xt.,l 1 jr#abc.txtmn 2 c*/fe 3 uz 4” | tr -dc '[:space:][:alnum:]'


    8、将PATH变量每个目录显示在独立的一行


    9、将指定文件中0-9分别替代成a-j


    10、将文件/etc/centos-release中每个单词(由字母组成)显示在独立的一行,并无空行

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

                                                                               

     

  • 相关阅读:
    我的C#入门之路_Day2
    我的C#入门之路 _ Day1
    【插件开发】VSCode插件开发全攻略(八)代码片段、设置、自定义欢迎页
    【插件开发】VSCode插件开发全攻略(六)开发调试技巧
    【插件开发】VSCode插件开发全攻略(五)跳转到定义、自动补全、悬停提示
    【插件开发】VSCode插件开发全攻略(四)命令、菜单、快捷键
    【插件开发】VSCode插件开发全攻略(三)package.json详解
    【插件开发】VSCode插件开发全攻略(二)HelloWord
    【插件开发】VSCode插件开发全攻略(七)WebView
    public/private/protected的具体区别
  • 原文地址:https://www.cnblogs.com/huxiaojun/p/8688241.html
Copyright © 2020-2023  润新知