我是 bash shell 脚本的新手,如果有人问过这个问题,我深表歉意。
我有多个文件的组合,例如:
USA.txt Florida.txt Miami.txt
我想加入这些文件并创建一个新文件,其中包含以下所有内容:
cat *.txt > USA_FLORIDA_MIAMI.txt
在另一种情况下,事情是在其他时候文件具有不同的前缀:
Canada.txt Quebec.txt Montreal.txt
所以在第二种情况下,输出将是 CANADA_QUEBEC_MONTREAL.txt:
cat *.txt > CANADA_QUEBEC_MONTREAL.txt
对于其他文件的所有组合,依此类推
在第一种情况下,USA.txt Florida.txt Miami.txt 是目录中唯一的 .txt 文件。在第二种情况下,它们将被 Canada.txt Quebec.txt Montreal.txt 替换,因此我需要编写一个代码,该代码始终结合目录中当时存在的所有 .txt 文件的前缀信息并将其添加到输出文件的前缀中。这里的变量是国家、州和城市的名称。
关于我可以使用的任何命令的任何建议?谢谢
脏,但有效:
运行它
它将合并文件并根据给定的文件创建文件名。
我想你也可以只使用几个Bash 的参数扩展语法。
基本的事情是:
可用作单线,如:
或者做了一个函数:
被包含在一个脚本中,或者
source
从你的交互式 shell 中编辑,然后像下面那样使用: