我运行一个包含这样一个命令的文件
Comm-3<(切割-f 1 -d‘’<./atoz -d)<(切割-f 1 -d‘)
当它在文件之外运行时,它会成功。但是我得到了错误:“file1: 1: file1:语法错误:"(”意外",当我键入
sh file1 file2并尝试从file1运行该命令。
该文件没有任何#!bin/bash或.sh后缀,因为我没有解决这种问题的背景。
有人知道怎么解决吗?非常感谢
发布于 2017-06-18 16:22:16
进程替换(<())是bash特性。/bin/sh不支持它,它只保证POSIX sh规范中存在的特性(在符合1992年或更新的POSIX规范的平台上;在旧的平台上,它可能是1970年代的Bourne)。
使用bash yourscript或#!/bin/bash shebang运行此文件。
https://stackoverflow.com/questions/44617010
复制相似问题