使用cat进行管道处理

使用cat进行管道处理

原来的:

./A_process.py _ < input.dict > output.dict.tmp
./B_process.py _ < output.dict.tmp > output.dict
rm output.dict.tmp

我正在尝试将其变成管道,所以

cat input.dict | A_process.py _ | B_process.py _ > output.dict

但是它显示“未找到 A_process.py 命令”...

我猜测环境有问题,但不知道该怎么办。

答案1

正如 @steeldriver 在他的评论中写道,您面临的问题是您正在执行的脚本不在您的PATH

简单的解决方案是将前缀添加./到脚本名称,假设您在脚本所在的同一文件夹中运行命令:

cat input.dict | ./A_process.py _ | ./B_process.py _ > output.dict

其他选项可能是:

  • 将脚本位置的路径添加到PATH变量中。
  • 而不是./script_name使用脚本的完整路径/full/path/to/script/directory/A_process.py

相关内容