1. cut

cut命令用于从行中截取字符串。

SYNOPSIS

cut OPTION... [FILE]...

** OPTION**

-d CHAR:以指定的字符为分隔符(不要用空格作为分隔符);
-f FIELDS:挑选出的字段;
n:第n个字段;
n-m:第n-m个字段;
n-:第n个-最后一个字段;
-m:第1-m个字段;
n,m:第n和m个字段;

示例

# 查找/etc/passwd中以bash结尾的行,显示user和UID
grep "bash$" /etc/passwd | cut -d ":" -f 1,3

2. printf

printf用于格式化输出,默认不包含换行,如需换行需要加入转义换行符\n

SYNOPSIS

printf [-v var] 格式 [参数]

Options

-v var  结果输出到变量var而非标准输出

格式

%c: 显示字符的ASCII码;
%d, %i: 显示十进制整数;
%e, %E: 科学计数法数值显示;
%f:显示为浮点数;
%g, %G:以科学计数法或浮点形式显示数值;
%s:显示字符串;
%u:无符号整数;
%%: 显示%自身;

修饰符

x[.y]:x控制显示的宽度;y表示小数点后的精度;如%3.1f
-: 左对齐(默认为右对齐)
+:显示数值的符号

示例

# 格式化输出到变量
[root@VM_41_201_centos ~]# printf -v test "1234abcd"
[root@VM_41_201_centos ~]# echo $test
1234abcd
# 格式化输出
[root@VM_41_201_centos ~]# printf "%g\n" 1234567.89
1.23457e+06
[root@VM_41_201_centos ~]# printf "%e\n" 1234567.89
1.234568e+06
# 若指定的宽度不足,则以实际输出为准
[root@VM_41_201_centos ~]# printf "%5s\n" abcdefg
abcdefg
# 若指定的宽度未占满,则会显示空格
[root@VM_41_201_centos ~]# printf "*%10s*\n" abcdefg
* abcdefg*
# 左对齐
[root@VM_41_201_centos ~]# printf "*%-10s*\n" abcdefg
*abcdefg *
# 多个格式化组合
[root@VM_41_201_centos ~]# printf "*%s*%6.2f*\n" user1 123.456
*user1*123.46*

bash编程-cut、printf的更多相关文章

  1. bash编程总结

    bash应该是目前Linux上最流行的shell脚本解释程序了(还有个shell叫dash,我太讨厌这个东东了.),只要你在linux上工作,并且希望自己能够工作得更愉悦,那么你应该熟悉最基本的bas ...

  2. bash编程基础

    bash变量 变量命名: 1.不能使用程序中的关键字(保留字) 2.只能使用数字.字母和下划线,且不能以数字开头 3.要见名知义 变量类型: 数值型:精确数值(整数),近似数值(浮点型) 字符型:ch ...

  3. bash编程之多分支if 语句及for循环

    第十七章.bash编程之多分支if 语句及for循环 if语句三种格式 多分支if语句练习 for循环 17.1.if语句的三种格式 单分支if语句 if condition;then 条件为真执行的 ...

  4. Linux中bash编程

    bash编程也叫shell编程 预定义变量         $? 最后一次执行的命令的返回状态.如果这个变量的值为0,证明上一个命令正确的执行:如果这个变量返回的值非0(具体是那个数,有命令自己来决定 ...

  5. bash编程之循环控制:

    bash编程之循环控制: for varName in LIST; do 循环体 done   while CONDITION; do 循环体 done   until CONDITION; do 循 ...

  6. [shell] Bash编程总结

    由于工作需要,之前的几个月写了一些Bash脚本,主要完成自动测试.打包.安装包等.虽然相比C++编程,要简单.傻瓜,但其在类Unix系统中可以大大提高工作的效率.所以在此对脚本编程过程中一些注意事项进 ...

  7. bash编程的信号捕获:

    bash编程的信号捕获: kill -l KILL无法捕捉:   trap 'COMMAND' SIGNAL,    信号捕捉用于:在中途中止时做一些清理操作.   一. trap捕捉到信号之后,可以 ...

  8. 怎样用 Bash 编程:逻辑操作符和 shell 扩展

    学习逻辑操作符和 shell 扩展,本文是三篇 Bash 编程系列的第二篇. Bash 是一种强大的编程语言,完美契合命令行和 shell 脚本.本系列(三篇文章,基于我的 三集 Linux 自学课程 ...

  9. 怎样用 Bash 编程:语法和工具

    让我们通过本系列文章来学习基本的 Bash 编程语法和工具,以及如何使用变量和控制运算符,这是三篇中的第一篇. Shell 是操作系统的命令解释器,其中 Bash 是我最喜欢的.每当用户或者系统管理员 ...

随机推荐

  1. gentoo 工具命令

    查看具体某个命令来源于哪个软件包,使用 equery,比如说查找 lsusb 来源于哪个包,可以用 equery belongs lsusb

  2. win7获取system32所有权

    (1)cmd ->  takeown /f  C:\Windows\System32* /r (2)右击system32文件夹属性 -> 安全 ->高级 ->所有者 —改为当前 ...

  3. PHP json_encode 文本形式数字下标数组导致下标丢失

    $arr = array( '0'=>'a','1'=>'b','2'=>'c','3'=>'d' ); echo json_encode($arr); 但是结果是 [&quo ...

  4. 第二篇*1、Python基本数据类型

    数据类型: 变量可以处理不同类型的值,基本的类型是数和字符串.使用变量时只需要给它们赋一个值.不需要声明或定义数据类型.Python3 中有六个标准的数据类型:Number(数字),String(字符 ...

  5. 尚硅谷springboot学习25-嵌入式Servlet容器

    SpringBoot默认使用Tomcat作为嵌入式的Servlet容器:

  6. 25.Hibernate-配置文件.md

    目录 1.主配置文件 1.1定义 1.1.1分类 1.1.2分类 1.1.3不使用配置文件生成表 1.2教程 2. 映射配置文件 1.主配置文件 1.1定义 1.1.1分类 在hibernate的配置 ...

  7. git pull时解决分支分叉(branch diverged)问题

    git pull时出现分支冲突(branch diverged) $ git status # On branch feature/worker-interface # Your branch and ...

  8. Django 重写用户模型

    AUTH_USER_MODEL = 'myapp.MyUser' django——重写用户模型 Django内建的User模型可能不适合某些类型的项目.例如,在某些网站上使用邮件地址而不是用户名作为身 ...

  9. Vue watch的高级用法

    <div> <p>FullName: {{fullName}}</p> <p>FirstName: <input type="text& ...

  10. 【转载】一个小时学会MySQL数据库

    一个小时学会MySQL数据库   目录 一.数据库概要 1.1.发展历史 1.1.1.人工处理阶段 1.1.2.文件系统 1.1.3.数据库管理系统 1.2.常见数据库技术品牌.服务与架构 1.3.数 ...