• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >Linux > 使用 Linux seq 命令生成数字序列(推荐)

使用 Linux seq 命令生成数字序列(推荐)

作者:Sandra Henry-stocker 字体:[增加 减小] 来源:互联网

本文主要包含linux,seq数字序列,linux,seq,命令等服务器相关知识,Sandra Henry-stocker希望可以进行参考

Linux 的 seq 命令可以以闪电般的速度生成数字列表,而且它也易于使用而且灵活。

在 Linux 中生成数字列表的最简单方法之一是使用 seq(系列sequence)命令。其最简单的形式是,seq 接收一个数字参数,并输出从 1 到该数字的列表。例如:

$ seq 5
1
2
3
4
5

除非另有指定,否则 seq 始终以 1 开头。你可以在最终数字前面插上不同数字开始一个序列。

$ seq 3 5
3
4
5

指定增量

你还可以指定增量步幅。假设你要列出 3 的倍数。指定起点(在此示例中为第一个 3 ),增量(第二个 3)和终点(18)。

$ seq 3 3 18
3
6
9
12
15
18

你可以选择使用负增量(即减量)将数字从大变小。

$ seq 18 -3 3
18
15
12
9
6
3

seq 命令也非常快。你或许可以在 10 秒内生成一百万个数字的列表。

$ time seq 1000000
1
2
3
…
…
999998
999999
1000000
real  0m9.290s <== 9+ seconds
user  0m0.020s
sys   0m0.899s

使用分隔符

另一个非常有用的选项是使用分隔符。你可以插入逗号、冒号或其他一些字符,而不是在每行上列出单个数字。-s 选项后跟要使用的字符。

$ seq -s: 3 3 18
3:6:9:12:15:18

实际上,如果只是希望将数字列在一行上,那么可以使用空格代替默认的换行符。

$ seq -s' '  3 3 18
3 6 9 12 15 18

开始数学运算

从生成数字序列到进行数学运算似乎是一个巨大的飞跃,但是有了正确的分隔符,seq 可以轻松地传递给 bc 进行计算。例如:

$ seq -s* 5 | bc
120

该命令中发生了什么?让我们来看看。首先,seq 生成一个数字列表,并使用 * 作为分隔符。

$ seq -s* 5
1*2*3*4*5

然后,它将字符串传递给计算器(bc),计算器立即将数字相乘。你可以在不到一秒的时间内进行相当庞大的计算。

$ time seq -s* 117 | bc
39699371608087208954019596294986306477904063601683223011297484643104\
22041758630649341780708631240196854767624444057168110272995649603642\
560353748940315749184568295424000000000000000000000000000
real  0m0.003s
user  0m0.004s
sys   0m0.000s

局限性

你只能选择一个分隔符,因此计算将非常有限。而单独使用 bc 可进行更复杂的数学运算。此外,seq 仅适用于数字。要生成单个字母的序列,请改用如下命令:

$ echo {a..g}
a b c d e f g

 

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Linux之删除带有空格的文件(不是目录)
  • linux 服务器自动备份脚本的方法(mysql、附件备份)
  • 解决linux环境下时区无法设置的问题
  • 解决Linux+Apache服务器URL区分大小写问题
  • Linux lsof命令使用详解
  • 使用vs2019进行Linux远程开发的方法步骤
  • Linux修改主机名的简单方法
  • Linux系统(CentOS7安装)安装JDK8的教程详解
  • Centos7下安装apache过程总结
  • centos7安装配置vsftp

相关文章

  • centos服务器搭建ntp服务
  • Centos7下安装apache过程总结
  • Centos上安装MySQL社区版
  • CentOS 删除MySQL
  • 使用 Linux seq 命令生成数字序列(推荐)
  • centos6.5下部署elk
  • ubuntu修改terminal终端的主机名的实现方法
  • Linux中Varnish基础应用
  • CentOS云主机中Nginx正向代理同时支持 https 和 http 访问
  • CentOS安装配置mariadb

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • CentOS6 下的WEB环境搭建
    • Centos6.5 安装 MySQL5.6
    • centos nginx 环境下 搭建 letsencrypt
    • Centos6.5下彻底删除MYSQL
    • 解决linux环境下时区无法设置的问题
    • CentOS源码安装MySQL 5.6.16
    • Centos 配置mailx使用外部smtp发送邮件
    • 使用vs2019进行Linux远程开发的方法步骤
    • CentOS上安装MongoDB 3.2
    • Centos上安装MySQL社区版

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有