首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何将0/1编码值与同一文件中提供的键匹配,并在bash中重写为行(而不是列表)

在bash中,我们可以使用0/1编码值与同一文件中提供的键进行匹配,并将其重写为行而不是列表。以下是实现这个过程的步骤:

  1. 首先,我们需要将0/1编码值和键存储在一个文件中,假设文件名为codes.txt。codes.txt的格式如下:
代码语言:txt
复制

0 key1

1 key2

0 key3

1 key4

代码语言:txt
复制

其中,每一行表示一个0/1编码值和对应的键。

  1. 接下来,我们可以使用bash脚本来实现匹配和重写的过程。假设脚本名为rewrite.sh。脚本的内容如下:
代码语言:bash
复制

#!/bin/bash

读取codes.txt文件的每一行

while read -r code key; do

代码语言:txt
复制
   # 判断0/1编码值是否与提供的键匹配
代码语言:txt
复制
   if [[ "$code" == "0" ]]; then
代码语言:txt
复制
       # 将匹配的键重写为行输出
代码语言:txt
复制
       echo "$key"
代码语言:txt
复制
   fi

done < codes.txt

代码语言:txt
复制

在脚本中,我们使用了一个while循环来逐行读取codes.txt文件。然后,我们使用if语句判断0/1编码值是否与提供的键匹配。如果匹配成功,我们将键重写为行输出。

  1. 保存并退出rewrite.sh脚本。
  2. 打开终端,进入脚本所在的目录,并给予脚本执行权限:
代码语言:bash
复制

chmod +x rewrite.sh

代码语言:txt
复制
  1. 运行脚本:
代码语言:bash
复制

./rewrite.sh

代码语言:txt
复制

脚本将会输出与0/1编码值匹配的键,每个键占一行。

这样,我们就实现了将0/1编码值与同一文件中提供的键匹配,并在bash中重写为行的功能。请注意,以上答案中没有提及任何特定的云计算品牌商,如有需要,可以根据实际情况选择适合的云计算平台和相关产品。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Shell脚本——内置命令

一、内置命令 所谓 Shell 内置命令,就是由 Bash 自身提供命令,不是文件系统某个可执行文件。...现在你应该能理解类似ll这样命令为什么ls -l效果是一样吧。 三、echo命令 echo 是一个 Shell 内建命令,用来在终端输出字符串,并在最后默认加上换行符。...-e 在获取用户输入时候,对功能进行编码转换,不会直接显式功能对应字符。 -n num 读取 num 个字符,不是整行字符。 -p prompt 显示提示信息,提示内容 prompt。...如果不指定,默认状态0。 一般情况下,退出状态 0 表示成功,退出状态0 表示执行失败(出错)了。...六、下表列出了 Bash Shell 中直接可用内建命令 命令 说明 : 扩展参数列表,执行重定向操作 .

2.1K10

「微服务架构」部署NGINX Plus作为API网关,第1部分

第27到30处理日志记录默认和错误处理,并在响应讨论错误部分如下。 单服务微服务API后端 一些API可以在单个后端实现,但是出于弹性或负载平衡原因,我们通常期望存在多个API。...第27指令指定当请求任何API定义都不匹配时,NGINX Plus会返回错误不是默认错误。...完整错误响应列表在第29include伪指令引用单独配置文件定义,其前几行如下所示。如果首选不同错误格式,并且通过更改第30default_type匹配,则可以修改此文件。...第二个参数创建一个新变量($ api_client_name)并将其设置第一个参数匹配第二个参数。...第23处理API地图块任何都不匹配情况 - 在这种情况下,api_keys.conf第2默认参数将$ api_client_name设置空字符串 - 我们发送403响应告诉身份验证失败客户端

1.9K20

Unix & Linux 大学教程 学习总结

Unix & Linux 大学教程    Harley Hahn 0,操作系统最重要功能 控制计算机并在计算机启动或者重新启动时初始化计算机 支持计算机交互所使用界面 需要使用计算机资源(磁盘空间...、文件位置、处理时间、内存等)程序提供接口 管理计算机内存 维护并管理文件系统 调度工作 提供账户和安全服务 1,内核提供服务: 内存管理(虚拟内存管理,包括分页) 进程管理(进程创建、终止、调度...简单地讲,文件存放数据或者允许访问资源,进程是正在执行程序。 进程可以分成更小单元,称为线程,线程是一组运行在进程环境指令。.../OK/(字符串OK所在行) [0-9][0-9]包含两个连续数字 -e 多条更改 -f 文件 33,正则表达式 元字符 . ^ $ \<    匹配单词开头 \>    匹配单词结尾 [abc...]    匹配abc任何字符 [^abc]    匹配不在abc任何字符 ()    组:视为一个单独单元 |    匹配选择之一 \    引用:从字面上解释元字符 运算符 *    0或多次

2.3K10

常用 linux 命令集锦

1.cat命令可以一次显示整个文件,如果文件比较大,使用不是很方便; 2.more命令可以让屏幕在显示满一屏幕时暂停,此时可按空格健继续显示下一个画面,或按Q停止显示。...文件,如果已经存在,file文件重写。...多个替换可以在同一条命令执行,用分号";"分隔,其格式: # 同时执行两个替换规则 sed 's/^/添加头部&/g;s/$/&添加尾部/g' awk: awk语言最基本功能是在文件或者字符串基于指定规则浏览和抽取信息...如果只是显示/etc/passwd账户和账户对应shell,账户shell之间以tab分割 #cat /etc/passwd |awk -F ':' '{print $1"\t"$7}'...root /bin/bash daemon /bin/sh bin /bin/sh sys /bin/sh 如果只是显示/etc/passwd账户和账户对应shell,账户shell

4.4K10

培养这10个习惯,你就离UNIX高手更进一步了

如果键入 f,然后按 Esc ,将填充 file,之后你需要输入 1、2 或 3 来完成相应文件名。 Bash Bash Shell 也提供文件名补全功能,但它使用 是Tab 。...键入文件一部分后,按 Tab ,如果有多个文件满足您请求,并且您需要添加文本以选择其中一个文件,那么您可以多按 Tab 两次,以显示您目前键入内容相匹配文件列表。...当按一次 Tab 时,Bash 自动补全显示file;再按一次 Tab 时,将展开列表 file1 file2 file3。...Korn Shell 对于 Korn Shell 用户,文件名补全功能取决于 EDITOR 变量。如果 EDITOR 设置 vi,那么您键入部分名称,然后按 Esc 后跟反斜杠 () 字符。...List 3 示例显示可以如何将此操作符 !$ 运算符组合使用。在第一个命令,将一个文件重新命名为更有意义名称,但为了保持原始文件名可用,创建了一个符号链接。

76720

Linux Shell基础篇三 - 内置命令

内置命令 Shell 内置命令,就是由 Bash Shell 自身提供命令,不是文件系统可执行脚本文件。...:file :表示外部可执行文件; alias :表示该指令命令别名所设定名称; builtin :表示该指令 bash 内建指令功能; -p 如果后面接可执行文件外部指令时,会显示出完整文件名...执行内置命令相当于调用当前 Shell 进程一个函数, 还是在当前Shell环境进程内, 减少了上下文切换。 内置命令列表 命令 说明 : 扩展参数列表,执行重定向操作 ....-e 在获取用户输入时候,对功能进行编码转换,不会直接显式功能对应字符。 -n num 读取 num 个字符,不是整行字符。 -p prompt 显示提示信息,提示内容prompt。...(key)也即字符串形式数组下标,(value)也即元素

1.3K30

Spark RDD Dataset 相关操作及对比汇总笔记

RDD是根据哈希来分区 RDD具体操作分为Transformation操作Action操作,分别是 变换Transformation 变换返回是一个新 RDD 集合,不是单个。...RDD> mapValues(scala.Function1 f) 对pair RDD每个应用一个函数不改变 Pass each value in the key-value pair RDD...注意:这个过程会在每个分区第一次出现各个时发生,不是在整个RDD第一次出现一个时发生。)...如果这是一个在处理当前分区之前已经遇到,此时combineByKey()使用mergeValue()将该累加器对应的当前这个新进行合并。...由于每个分区都是独立处理,因此对于同一可以有多个累加器。如果有两个或者更多分区都有对应同一累加器,就需要使用用户提供mergeCombiners()将各个分区结果进行合并。

98710

Linux基础命令行使用技巧

,vi 编辑模式我们提供了更多控制命令; 移动命令 #(1)vi 编辑模式移动命令 echo hello, this is a command #首先,按 Esc 进入命令模式,此时光标位于...bash在每个命令后检查窗口大小,如果有必要,就更新LINES和COLUMNS cmdhist on #bash试图将一个多行命令所有保存在同一个历史项.这是的多行命令重新编辑更方便...shell.允许以#开头词以及同一其他字符被忽略.缺省打开 lastpipe off lithist off #如果打开,且cmdhist选项也打开,多行命令讲用嵌入换行符保存到历史...nocasematch off nullglob off #如果设置,bash允许没有匹配任何文件文件名模式扩展成一个空串,不是他们本身 progcomp on...sourcepath on #如果设置source内置命令使用PATH来寻找作为参数提供文件目录.缺省打开 syslog_history off xpg_echo

5.9K20

GitHub日收12000星,六个命令行工具引爆程序员圈!

Funky工作方式很简单:在进入一个目录时,Funky会查找一个包含bash函数列表.funky文件。它会把这些文件加载,并在用户退出时卸载。...它运行速度很快,而且在需要在命令行输入许多地方,它可以交互式地让你基于模糊关键字匹配筛选选项。...init zsh)" 二进制文件发出初始化脚本,不是将初始化脚本转储到主目录,这是一种很好做 法。...Zoxide——下面要介绍工具——也能做到这一点。此外,FZF会干扰McFly CTRL-R,必须注释掉FZF初始化脚本这一以使McFly正常工作。...Gitupdate可以提交文件,并使用更改文件文件名(不是扩展名)来创建更有意义提交消息。当提交消息不重要时,它非常有用。 ? GitUpdate生成提交消息、提交和推送。

46920

Linux基础命令行使用技巧

WeiyiGeek. ---- vi 编辑模式 描述: Emacs 编辑模式相比,vi 编辑模式我们提供了更多控制命令; 移动命令 #(1)vi 编辑模式移动命令 echo hello...bash在每个命令后检查窗口大小,如果有必要,就更新LINES和COLUMNS cmdhist on #bash试图将一个多行命令所有保存在同一个历史项.这是的多行命令重新编辑更方便...shell.允许以#开头词以及同一其他字符被忽略.缺省打开 lastpipe off lithist off #如果打开,且cmdhist选项也打开,多行命令讲用嵌入换行符保存到历史...nocasematch off nullglob off #如果设置,bash允许没有匹配任何文件文件名模式扩展成一个空串,不是他们本身 progcomp on...sourcepath on #如果设置source内置命令使用PATH来寻找作为参数提供文件目录.缺省打开 syslog_history off xpg_echo

5.8K63

《数据密集型应用系统设计》读书笔记(三)

每次调用 db_set 文件将追加新内容到文件末尾,即便多次更新某个,旧版本也不会被覆盖,而是需要查看文件「最后一次」出现来找到最新(在 db_get 中使用了 tail -n 1)。...由于页碎片化,B-tree 存储引擎有时会使某些磁盘空间无法使用, LSM-tree 不是面向页,且定期重写 SSTable 以消除碎片化。...二级索引可以较容易地基于 key-value 索引来构建,区别在于它不是唯一,这可以通过两种方式解决: 使索引每个成为匹配标识符列表 追加一些标识符来使每个变得唯一 无论使用哪种方式...1.5.1 在索引存储 索引是查询搜索对象,可以是以下两类之一: 实际(文档、顶点) 对其他地方存储引用 对于第二种情况,存储具体位置被称为「堆文件」(heap file)...个不同列转化为 个单独位图,每个位图对应一个不同,其中一个位对应为一,如果具有该,则该位 1,否则为 0(相当于把一列具体数值变成了一坨仅包含 01 文件)。

1K50

一篇文章学习 linux 命令

会执行当前匹配命令,按下右方向会将匹配项放入当前行,不会直接执行,以便做出修改)。...此外,当 Bash 脚本只需要一个参数时,可以使用这样代码 input_file=${1:?usage: $0 input_file}。在变量空时使用默认:${name:-default}。...使用 man ascii 查看具有十六进制和十进制ASCII表。man unicode,man utf-8,以及 man latin1 有助于你去了解通用编码信息。...-type f -ls 假设你有一个类似于 web 服务器日志文件文本文件,并且一个确定只会出现在某些上,假设一个 acct_id 参数在 URI 。...tac:反向输出文件 shuf:文件随机选取几行 comm:一比较排序过文件 strings:从二进制文件抽取文本 tr:转换字母 iconv 或 uconv:文本编码转换 split 和

2.2K22

Shell系统内置变量

另外,当在一个 shell 启动另一个 shell 时候, SHELL 变量不会发生改变, BASH 变量会发生改变,指向新 shell 路径。...SHLVL Shell 嵌套层次,第一个 shell $SHLVL 1, 每启动一个 bash 实例就会 + 1 EMACS 判断 bash 是否在 EMACS 执行,这种情况下 bash...显示相关 ---- PS1 / PS2 / PS3 / PS4 / PROMPT_DIRTRIM 定义提示符 影响 bash 行为参数 ------------- BASH_ENV 该 shell...初始化文件路径,若设置了该则会执行该所指定文件初始化命令 CDPATH cd 命令搜索路径,是一个用冒号分隔目录列表。...TMPDIR 若设置了,则 bash 在该所指定目录下创建临时文件 其他 -- BASH_REMATCH 当使用 =~ 进行正则匹配时,该数组变量存储是整体或个分组匹配字符串位置,其中 ${BASH_REMATCH0

1.6K00

Linux 之 Vim 编辑器从基础到大成使用

-o/-O #示例3.显示多个文件退出当打开多个文件时候,再文件中进行切换 :ls #列出所有打开文件 # 1 # "1.txt" 第 1 # 2 %a "...2.txt" 第 1 #表示当前行 :n #文件后退 :N或者:prev #依次回到前一个文件 #示例4.打开一个文件 :o filename #打开一个新文件到当我文件列表...#示例5.同一个编辑器缓冲区是剪贴板是共享,可以方便在多个文件复制 :e /tmp/a #在同一个编辑器内打开/tmp/a文件 #示例6.退出多个编辑器快捷 :q #退出 :!...: :BundleList:列举出列表(.vimrc)配置所有插件 :BundleInstall :安装列表全部插件 :BundleInstall!...vimrc配置文件无法识别.py后缀路径 原因:Vim 称 *.py 文件 filetype python 不是 py; 解决方法: #方式1 au BufRead,BufNewFile *

1.9K10

Vim编辑器基础入门

-o/-O #示例3.显示多个文件退出当打开多个文件时候,再文件中进行切换 :ls #列出所有打开文件 # 1 # "1.txt" 第 1 # 2 %a "...2.txt" 第 1 #表示当前行 :n #文件后退 :N或者:prev #依次回到前一个文件 #示例4.打开一个文件 :o filename #打开一个新文件到当我文件列表...#示例5.同一个编辑器缓冲区是剪贴板是共享,可以方便在多个文件复制 :e /tmp/a #在同一个编辑器内打开/tmp/a文件 #示例6.退出多个编辑器快捷 :q #退出 :!...: :BundleList:列举出列表(.vimrc)配置所有插件 :BundleInstall :安装列表全部插件 :BundleInstall!...vimrc配置文件无法识别.py后缀路径 原因:Vim 称 *.py 文件 filetype python 不是 py; 解决方法: #方式1 au BufRead,BufNewFile *

1.7K20

Python 3基础语法知识点都在这里了,如果还不能入门就不能怪我了

content = input(" 请输入点东西并按 Enter ") print(content) 同一写多条语句 Python 可以在同一中使用多条语句,语句之间使用分号;分割。...]) 移除列表一个元素(默认最后一个元素),并且返回该元素 list.remove(obj) 移除列表某个第一个匹配项 list.reverse() 反向排序列表元素 list.sort...,如果不在字典返回默认 dict.items() 以列表形式返回可遍历(, )元组数组 dict.keys() 以列表返回一个字典所有的 dict.values() 以列表返回字典所有...whence , 如果是 0 表示开头, 如果是 1 表示当前位置, 2 表示文件结尾。whence 默认为0,即文件开头。...文件编码: utf-8 文件打开模式: w+ 文件是否可读: True 文件是否可写: True 此时文件指针位置: 0 写入文件 6 个字符 16 第一内容 16 41 第一内容 第二次

1.8K30

一文入门Python 3

content = input("\n\n请输入点东西并按 Enter \n") print(content) 同一写多条语句 Python 可以在同一中使用多条语句,语句之间使用分号;分割。...]) 移除列表一个元素(默认最后一个元素),并且返回该元素 list.remove(obj) 移除列表某个第一个匹配项 list.reverse() 反向排序列表元素 list.sort...返回指定,如果不在字典返回默认 dict.items() 以列表形式返回可遍历(, )元组数组 dict.keys() 以列表返回一个字典所有的 dict.values() 以列表返回字典所有...可更改不可更改对象 在 Python ,字符串,数字和元组是不可更改对象,列表、字典等则是可以修改对象。...whence , 如果是 0 表示开头, 如果是 1 表示当前位置, 2 表示文件结尾。whence 默认为0,即文件开头。

1.2K20

Python 3 入门 ,看这篇就够了 。

content = input("\n\n请输入点东西并按 Enter \n") print(content) 同一写多条语句 Python 可以在同一中使用多条语句,语句之间使用分号;分割。...]) 移除列表一个元素(默认最后一个元素),并且返回该元素 list.remove(obj) 移除列表某个第一个匹配项 list.reverse() 反向排序列表元素 list.sort...返回指定,如果不在字典返回默认 dict.items() 以列表形式返回可遍历(, )元组数组 dict.keys() 以列表返回一个字典所有的 dict.values() 以列表返回字典所有...可更改不可更改对象 在 Python ,字符串,数字和元组是不可更改对象,列表、字典等则是可以修改对象。...whence , 如果是 0 表示开头, 如果是 1 表示当前位置, 2 表示文件结尾。whence 默认为0,即文件开头。

1.2K20
领券