Linux非重度命令(printf,echo,nl使用介绍)
  TEZNKK3IfmPf 2023年11月14日 21 0

printf,nl,echo这三个命令都是按一定格式输出自己想要的内容的命令,这三个命令的使用和掌握可以使我们的运维工作更上一层楼。从使用频率上来说,并不是经常使用的命令。

 

一,printf

此命令是格式化输出命令,格式化指的是按照自己定义的规则格式输出相应内容。可以看做是echo命令的超级加强版。

printf命令的帮助是 man printf,并不能使用printf --help,这一点需要注意。

       %s 字符串

  %f 浮点格式  (float   double)

  %cASCII字符,显示相对应的第一个字符

  %d%i 十进制数

  %o 十进制转换到不带正负的八进制

  %u十进制转换到十进制

  %x 十进制转换到十六进制

  %%本身

      \f换页

  \n换行

  \r回车

  \t制表符

  \v垂直制表符

  \\本身

例如:将wo  ai tian an men 按行打印输出到屏幕,分别以一个单词和两个单词为单位打印输出。

Linux非重度命令(printf,echo,nl使用介绍)

总的来说,这个命令的格式是:printf  "要定义的格式 最终输出的方式" 要格式化的内容,并且是支持awk命令的哦

二,echo

前面也大概提到了 ,是printf的简化版本,主要是echo可以更快速的自定义输出颜色,例如下面这个脚本(检测主机是否在线的脚本):

#!/bin/bash
 
IP_LIST="192.168.0.17 192.168.0.18 192.168.0.19" # 将ip放进数组中
 
for ip in $IP_LIST; do    #for循环遍历数组
    num=1    #定义初始值
    while [ $num -le 3 ]  
    do
        if ping -c 1 $ip >/dev/null
        then
           echo -e "\033[32;1m$ip Ping is success\033[0m"  #if 判断如果ping通 则返回success 
           break
        else
           FALL[$num]=$ip                          # 反之 则失败次数+1
           let num++
        fi
    done
    if [  -eq 3 ]          # if判断如果失败次数等于3 则返回Ping is failure
    then
        echo -e "\033[31;1m Ping is failure!\033[0m"
        unset FALL[*]
    fi
done

主要使用的参数是 -e,表示echo可以处理特殊字符而不转义,除此之外,别的参数没有太多的实际用处。

三,nl

nl命令等于cat -n  命令

 

命令参数:

  -b  :指定行号指定的方式,主要有两种:

  -b a :表示不论是否为空行,也同样列出行号(类似 cat -n);

  -b t :如果有空行,空的那一行不要列出行号(默认值);

  -n  :列出行号表示的方法,主要有三种:

  -n ln :行号在萤幕的最左方显示;

  -n rn :行号在自己栏位的最右方显示,且不加 0 ;

  -n rz :行号在自己栏位的最右方显示,且加 0 ;

  -w  :行号栏位的占用的位数。

  -p 在逻辑定界符处不重新开始计算。

例如:nl -b a -n rz text.txt

Linux非重度命令(printf,echo,nl使用介绍)

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月14日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2024年05月31日   42   0   0 linux服务器
  TEZNKK3IfmPf   2024年05月31日   27   0   0 linux服务器centos
  TEZNKK3IfmPf   2024年05月31日   26   0   0 linuxbind
  TEZNKK3IfmPf   2024年05月31日   36   0   0 linuxshell
TEZNKK3IfmPf