小编Hos*_*ost的帖子

获取字符的数字 ASCII 值

我正在尝试编写一个 shell 脚本,它要求在 AZ 或 az 范围内输入一个 ASCII 字符并返回其等效的数值。例如,输出可能如下所示:

scarlet$ Please type a character between A and Z or between a and z:
scarlet$ A       
scarlet$ The decimal value of A is: 65 
Run Code Online (Sandbox Code Playgroud)

我的尝试:

#!/bin/bash
echo Enter a letter:
read A
echo -n ${A} | od -i | head -1 | cut -b 10- | tr -d " "
Run Code Online (Sandbox Code Playgroud)

scripting text-processing od

11
推荐指数
3
解决办法
2万
查看次数

仅列出当前目录中 ASCII 文本类型文件的脚本?

如何编写一个 shell 脚本来搜索当前的 UNIX 目录并返回所有 ASCII 文本类型的文件的名称?

shell-script mime-types files

4
推荐指数
1
解决办法
1万
查看次数

我将空格更改为制表符的 awk 程序不起作用

如何编写awk用于读取数据文件students.txt并以选项卡格式输出数据的shell脚本,如下所示:

Surname Forename MSc Stream Date of Birth
Smith John IT 15.01.1986
Taylor Susan IT 04.05.1987
Thomas Steve MIT 19.04.1986
Run Code Online (Sandbox Code Playgroud)
  • 如果选项卡式列不对齐,请不要担心。

  • 每个(姓氏、名字、理学硕士专业和出生日期)列之间的距离是一个选项卡。

题:

为什么这个波纹管代码对我不起作用?

awk 'BEGIN {IFS=" "} {OFS="\t"} {print $1,$2,$3,$4}' students.txt
Run Code Online (Sandbox Code Playgroud)

awk text-processing

4
推荐指数
1
解决办法
2万
查看次数

从 grep 切换到 sed

我有一个 files students.txt,具有以下形式的行:

Surname, Forename: Day.Month.Year: Degree
Run Code Online (Sandbox Code Playgroud)

例如:

Smith, John: 15.01.1986: MSc IT
Taylor, Susan: 04.05.1987: MSc IT
Thomas, Steve: 19.04.1986: MSc MIT
Sellen, Jo: 03.07.1987: MSc CSE
Run Code Online (Sandbox Code Playgroud)

如何将下面的sed命令更改为返回所有1987年出生的学生的姓氏的命令?

$ grep 1987 students.txt | grep -o "^\(.*\),"
Run Code Online (Sandbox Code Playgroud)

grep sed text-processing

0
推荐指数
1
解决办法
378
查看次数

标签 统计

text-processing ×3

awk ×1

files ×1

grep ×1

mime-types ×1

od ×1

scripting ×1

sed ×1

shell-script ×1