find.txt
パターン検索でファイルを作成する Perl スクリプトで 2 つのシェル コマンドを実行したいと考えています。以下は、正常に実行され、シェルから実行すると結果が得られるシェル スクリプトです。
cat "/home/atsuser/Users/srittamp/ns.conf" | grep "add\|set\|enable" | awk '{print $2}' > find.txt
grep -o '\w*' find.txt | sort | uniq > find.txt
しかし、system
perl のコマンドを使用して同じことを行うと、空白が表示されますfind.txt
。以下は私のPerlスクリプトです:
#!/usr/bin/perl
use strict;
use warnings;
my $conf_file = "/home/atsuser/Users/srittamp/ns.conf";
my $find_file = "/home/atsuser/Users/srittamp/find.txt";
system("cat \"$conf_file\" | grep \"add\\|set\\|enable\" | awk '{print \$2}' > /home/atsuser/Users/srittamp/find.txt");
system("grep -o \'\\w*\' $find_file | sort | uniq > /home/atsuser/Users/srittamp/find.txt");
誰でもこれで私を助けてもらえますか?