Выполняю вот такую команду в shell без проблем:
wc -l filename | awk '{ print $1 }'
Получаю только первое поле вывода. Все отлично. А вот выполнение такой же команды в Perl не дает желаемого результата:
$string_count=system("wc -l $local_file_name_1 | awk \'{ print $1}\' ");
Выдает строку целиком, т.е.:
19574 filename
В чем мой косяк?
Заранее благодарен за помощь!
>Выполняю вот такую команду в shell без проблем:
>wc -l filename | awk '{ print $1 }'
>Получаю только первое поле вывода. Все отлично. А вот выполнение такой же
>команды в Perl не дает желаемого результата:
>$string_count=system("wc -l $local_file_name_1 | awk \'{ print $1}\' ");Надо \$1
А вообще, для этого лучше использовать что-то вроде stat.
>>Выполняю вот такую команду в shell без проблем:
>>wc -l filename | awk '{ print $1 }'
>>Получаю только первое поле вывода. Все отлично. А вот выполнение такой же
>>команды в Perl не дает желаемого результата:
>>$string_count=system("wc -l $local_file_name_1 | awk \'{ print $1}\' ");
>
>Надо \$1
>
>А вообще, для этого лучше использовать что-то вроде stat.Большое спасибо! Совсем видать глаз замылился раз перед знаком бакса забыл поставить признак того, что это не спецсимвол :(
>>>Выполняю вот такую команду в shell без проблем:
>>>wc -l filename | awk '{ print $1 }'
>>>Получаю только первое поле вывода. Все отлично. А вот выполнение такой же
>>>команды в Perl не дает желаемого результата:
>>>$string_count=system("wc -l $local_file_name_1 | awk \'{ print $1}\' ");
>>
>>Надо \$1
>>
>>А вообще, для этого лучше использовать что-то вроде stat.
>
>Большое спасибо! Совсем видать глаз замылился раз перед знаком бакса забыл поставить
>признак того, что это не спецсимвол :($string_count=`wc -l $local_file_name_1 | awk \'{ print $1}\' `;