2015-05-29 64 views
6

użyciuget numer linii z bash w R

system(paste("wc -l file_1.txt")) 

w badania, aby uzyskać numer wiersza pliku Wyjście jest

1601 file_1.txt

Mój problem jest, że jeśli System typu (paste ("wc -l file_1.txt")) -> kt a następnie

kt 
[1] 0 

to muszę być w stanie powiedzieć, czy

system(paste("wc -l file_1.txt"))->kt 
kt[1]==1600 

lub not..but nie mogę uzyskać dostęp do elementów z commadn systemu lub na wydruku ... w jaki sposób mogę to zrobić jakoś sprawdzić, czy plik ma 1600 linie bez czytania go do pierwszej R ...

Odpowiedz

4

system zwraca tylko wartość zwracaną polecenia domyślnie trzeba użyć jej intern argument:

system(paste("wc -l banner.p"), intern=T)->kt 

kt byłby wtedy jakiś ciąg jak

<lines> <filename> 

A następnie można przeanalizować ciąg znaków.