tr[a-z][a-z]显示unix中的错误
在unix中,行tr[a-z][a-z]显示unix中的错误,unix,tr,Unix,Tr,在unix中,行echo“abc”| tr[a-z][a-z]显示以下错误: tr: extra operand `b' Try tr --help' for more information. 如果从同一服务器或任何其他服务器中的任何其他目录运行,则不会显示错误并打印正确的输出ABC。在特定目录中,它显示上述错误。 我验证并没有发现这样的冲突文件或脚本。不存在名为tr的脚本 目录内和目录外的哪个tr命令给出相同的输出/usr/bin/tr 在tr的位置上,我甚至尝试使用ech
echo“abc”| tr[a-z][a-z]
显示以下错误:
tr: extra operand `b'
Try tr --help' for more information.
如果从同一服务器或任何其他服务器中的任何其他目录运行,则不会显示错误并打印正确的输出ABC
。在特定目录中,它显示上述错误。我验证并没有发现这样的冲突文件或脚本。不存在名为
tr
的脚本目录内和目录外的哪个tr
命令给出相同的输出/usr/bin/tr
在
tr
的位置上,我甚至尝试使用echo“abc”|/usr/bin/tr[a-z][a-z]
来避免与其他文件(如果有的话)发生冲突。但同样的错误依然存在。如果我尝试
echo“abc”| tr'a''B'
,它将生成输出为Bbc
。我无法找出错误。tr
不需要括号:
tr a-z A-Z
[a-z]
对shell有特殊意义(扩展为匹配文件名的列表)。目录中可能有一个匹配文件(或多个匹配文件)不起作用。是的,它是正确的,tr[a-z]
除了转换之外,它将查找从a
到z
的文件名,在这种情况下[a-z]
转换为该文件
转到用户主目录并查找文件名,如
ls -lrth
-rw-r--r-- 1 root root 1.5M Aug 3 11:02 a
改名
mv a a_backup
您希望使用
[:upper://code>[:lower://code>避免文件名和表达式不明确
回声“abc”| tr[:下:[:上:]
谢谢这对我有用。但我很惊讶,因为有这样一行的脚本在一个月前运行时工作正常。但现在它显示了错误。也许你的第二行就是答案。