shell怎么输出指定行列字符串?

Shell不仅是命令的收集,更是一门非常棒的编程语言。可以通过使用shell使大量的任务自动化,shell特别擅长系统管理任务,尤其适合那些易用性、可维护性和便携性比效率更重要的任务。 其实作为命令语言交互式地解释和执行用户输入的命令只是shell功能的一个方面,shell还可以用来进行程序设计,它提供了定义变量和参数的手段以及丰富的程序控制结构。使用shell编程类似于DOS中的批处理文件,称为shell

shell的基本语法主要就是如何输入命令运行程序以及如何在程序之间通过shell的一些参数提供便利手段来进行通讯。

在Linux中,每一个进程都有三个特殊的文件描述指针:标准输入(standard input,文件描述指针为0)、标准输出(standard output,文件描述指针为1)、标准错误输出(standard error,文件描述指针为2)。这三个特殊的文件描述指针使进程在一般情况下接收标准输入终端的输入,同时由标准终端来显示输出,Linux同时也向使用者提供可以使用普通的文件或管道来取代这些标准输入输出设备。在shell中,使用者可以利用“>”和“<”来进行输入输出重定向。如:  

pipe同样可以在标准输入输出和标准错误输出间做代替工作,这样一来,可以将某一个程序的输出送到另一个程序的输入,其语法如下:

cut 命令将输入流以行为单位, 以一定条件切割, 将最终结果打印到标准(stdout), 输入流一般是一个文件名, 当没有指定文件名或直接指定 - 时表明直接从标砖输入(stdin)中取流

-b: 仅显示行中指定直接范围的内容
-c: 仅显示行中指定范围的字符
-d: 指定自负的分割符, 默认分割符为'TAB'
-f: 显示指定字段的内容
  • 截取 第2-5 个字符

wc 命令用于打印数日文件的行, 单词, 字节数

-L: 打印最长行的长度

sort 命令用于字段排序

-n: 按照数值大小排序 -o<输入文件>: 将输入结果存储在文件内 +<起始栏位>-<结束栏位>: 指定栏位来排序, 范围有起始栏到结束栏

从输入文件 或标准输入中过滤相邻匹

[输入文件]: 指定已排序好的文本文件 [输出文件]: 指定输出的文件

tee 用于读取标准输入的数据, 并将其内容输出成文件

将一个大文件分割分割成多个小文件, 有些文件太大, 分割成小文件, 可以提高易读性

-b: 指定切割的每个片段的大小, 单位为 byte
-c: 每输出一个片段, 单行的最大 byte 数
-d: 使用数字作为后缀
-l: 值为 每个片段的列数大小
PREFIX: 带包前导符, 可以作为切割文件的前导文件

tr 命令用于转换或删除文件的字符, 从标准输入读取数据, 进过字符串转译后, 将结果输出到标准设备.

-c: --complement: 反选设定字符, 也就是说符合 SET1 部分不做处理, 不符合的剩余部分进行转换
[:graph:] 所有可打印的空白字符(不包含空格) [CHAR] 所有符合指定的字符

7.3 将当前目录下文件的文件名小写替换成大写

  • profile文件内声明的变量, 仅在用于登录状态下都会生效
  • bashrc 文件内声明的变量, 不管用户是否 是登录状态下 执行的命令都会生效
  • /etc/ 目录下表示该文件对所有用户都有效,
  • ~/ 目录下表示该文件仅对 目标用户有效.
  • exprot 用于声明变量, 让系统变量问变量设定的文件生效.
  • 变量名由 数字字母下划线 组成, 且不可以为数字开头.
  • 变量内容如果有特殊字符需要生效, 则用双引号 引起, 如果不要生效, 或者没有特殊字符 使用单引号
  • 变量声明方式: export 变量名=变量值

7.9 命令后台与前台

  • 将命令行中正在运行的命令已到后台(暂停的): Ctrl+z
  • 将后台暂停的命令运行 bg [作业号]
  • 将后台命令已到前台运行 fg [作业号]
  • 查看后台运行的命令 jobs
  • 直接将命令作为后台状态运行: COMMAND &

7.10 列出目录下所有test 卡头文件

7.11 把命令输出打印到屏幕同时 输出到文件

7.12 长命令或选项过长, 记不住怎么办

7.13 将命令放置后台运行, 同时正确输出 和 错误输出到 一个文件

7.14 分割一个大文件

  • ; 前后两个命令互不影响, 不论前一个命令是否成功执行, 后一个都会被执行
  • && 只有前一个命令成功执行了, 才会执行后一个命令
  • || 前一个命令如果成功执行了, 后一个将不会被执行

##7.16 如果只想让某个用户使用某个变量如何做?

  • 将变量声明在对应用的家目录的 .bashrc 文件内

我要回帖

更多关于 shell截取指定长度字符串 的文章

 

随机推荐