Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
tr[a-z][a-z]显示unix中的错误_Unix_Tr - Fatal编程技术网

tr[a-z][a-z]显示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

在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
的位置上,我甚至尝试使用
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[:下:[:上:]


谢谢这对我有用。但我很惊讶,因为有这样一行的脚本在一个月前运行时工作正常。但现在它显示了错误。也许你的第二行就是答案。