正如它在标题中所说的;如果是,我当然需要一个类似bash的烟斗来舒适地使用它。
发布于 2021-01-19 08:21:48
如果您的系统具有OSS,则可以使用gtacl。gtacl允许你直接从OSS启动一个TACL,也就是一个守护程序,它本身就有grep。
要将会话从守护者TACL切换到OSS,首先输入osh,然后您可以简单地通过gtacl -c STATUS *, DETAIL运行您的TACL命令(这是一个用户状态示例)。
您可以在OSS中以这种方式运行所有TACL命令,就像在TACL会话中必须以osh -c "ps -e~|egrep -e 'sshd~|prngd'"身份运行OSS的所有osh命令一样(示例osh进程检查ssh)。
发布于 2020-07-11 00:23:32
我假设您想知道如何通过tacl从文件中搜索字符串
正在将文件读取到varaible
FILETOVAR file-name variable-level
exmple: FILETOVAR $AAA.BBB.CCC var
$AAA.BBB.CCC: filename
var: variable name查找变量中的字符串
VFIND var string
var:variable name
string : target string发布于 2020-10-28 21:21:40
Grep可以做很多事情。
如果要在特定文件中查找字符串,可以使用以下命令: EDIT R;LB/ string /All;E
将在单个可编辑文件(类型101)中查找。
如果您在一个$中查找多个文件。目录中,没有任何HPNonStop实用程序可以完成此任务。
您可以在上面的单个文件示例周围添加TACL代码,以查看所有可编辑的文件。类似于:
FooFind
?TACL Macro
#Frame
#Push StringToFind FileName StopLoop Vol SubVol
#Set StopLoop 0
#Set StringToFind %1%
#SetMany Vol SubVol, [#Fileinfo/volume,subvol/[#Defaults/Current/ ].a]
[#If [#Empty [StringToFind]]
|then|
#Output Usage: Please supply the string to find
#Output EG: Foofind foo
|else|
#Set Filename [#Defaults/Current/].a
[#Loop
|do|
#Set FileName [#NextFileName [FileName]]
[#If [#Match [Vol] [#fileinfo/Volume/[FileName]]]
And [#Match [Subvol] [#fileinfo/Subvol/[FileName]]]
|then|
[#If [#Match 101 [#fileinfo/Code/[FileName]]]
|then|
Edit [FileName] r;lb/[StringToFind]/;Exit
|else|
#Output [FileName] is not an Edit file. Skipping...
] == end of if
|else|
#Set StopLoop -1
] == end of if
|Until| [StopLoop]
] == end of loop
] == end of if
#UnFrame执行:
$DATA FOO 73> foofind
用法:请提供要查找的字符串
例如: Foofind foo
$DATA FOO 74> foofind foo
文本编辑器- T9601L01 - (20OCT14)
当前文件为$DATA.FOO.FOO1
文本编辑器- T9601L01 - (20OCT14)
当前文件为$DATA.FOO.FOO2
1 there is a foo here文本编辑器- T9601L01 - (20OCT14)
当前文件为$DATA.FOO.FOO3
1 And a foo foo here.文本编辑器- T9601L01 - (20OCT14)
当前文件为$DATA.FOO.FOOFIND
12 #Output EG: Foofind foo$DATA.FOO.NOTEDIT不是编辑文件。正在跳过...
$DATA FOO 75>
这是相当初级的。有很多增强的空间。但它确实完成了在卷/子卷目录中的所有可编辑文件中查找输入字符串的任务。
但是,如果您正在寻找一个类似grep的实用程序来搜索非编辑文件,那么最好的选择就是通过编程语言完成一些工作。
https://stackoverflow.com/questions/61076834
复制相似问题