comm perl脚本中的换行符
在两个文件名之间插入了一个换行符。 我如何避免这种情况comm perl脚本中的换行符,perl,comm,Perl,Comm,在两个文件名之间插入了一个换行符。 我如何避免这种情况 $diff = `comm -3 "/tmp/${PATH1U}_${SITE1}_s_${USER} /tmp/${PATH2U}_${SITE2}_s_${USER}"|wc -l`; 这是执行时的错误消息: comm:“/tmp/file1\n/tmp/file2\n”之后缺少操作数 两个问题: $USER的值以换行符结尾。你可以把它拿走。修正: chomp($USER); 您正在通过一条非常长且不正确的路径,而不是两条。修正
$diff = `comm -3 "/tmp/${PATH1U}_${SITE1}_s_${USER} /tmp/${PATH2U}_${SITE2}_s_${USER}"|wc -l`;
这是执行时的错误消息:
comm:“/tmp/file1\n/tmp/file2\n”之后缺少操作数
两个问题:
的值以换行符结尾。你可以把它拿走。修正:$USER
chomp($USER);
- 您正在通过一条非常长且不正确的路径,而不是两条。修正:
但这是一种创建shell文本的黑客方式。清洁剂:`comm -3 '/tmp/${PATH1U}_${SITE1}_s_${USER}' '/tmp/${PATH2U}_${SITE2}_s_${USER}' | wc -l`
use String::ShellQuote qw( shell_quote ); my $comm_cmd = shell_quote('comm', '-3', "/tmp/${PATH1U}_${SITE1}_s_${USER}", "/tmp/${PATH2U}_${SITE2}_s_${USER}"); `$comm_cmd | wc -l`
的值以换行符结尾。你可以把它拿走。修正:$USER
chomp($USER);
- 您正在通过一条非常长且不正确的路径,而不是两条。修正:
但这是一种创建shell文本的黑客方式。清洁剂:`comm -3 '/tmp/${PATH1U}_${SITE1}_s_${USER}' '/tmp/${PATH2U}_${SITE2}_s_${USER}' | wc -l`
use String::ShellQuote qw( shell_quote ); my $comm_cmd = shell_quote('comm', '-3', "/tmp/${PATH1U}_${SITE1}_s_${USER}", "/tmp/${PATH2U}_${SITE2}_s_${USER}"); `$comm_cmd | wc -l`
chomp
读取后的文件名。chomp
读取后的文件名。