누군가이 3 가지 명령을 찾는 데 도움을 줄 수 있습니까?


-4

스팸을 피하기 위해 하나의 질문 만하고 있습니다. 어떤 명령을 사용해야하는지 모르는 3 가지 상황이 있습니다. 그들은:

  1. 이름에 3 자 이상인 모든 파일을 나열하십시오 .

  2. "소유자에게 쓰기 권한"이있는 파일 수를 계산하십시오.

  3. BD.txt다음과 같은 내용 의 파일이 있습니다 (예 :).

Mary:Boston:20
John:New York:18
Paul:New York:25
Andrew:New Paris:30

뉴욕에 얼마나 많은 사람들이 살고 있는지 보여줘야합니다. 일반적으로 다음을 사용합니다.

cat BD.txt | grep **place_name** | wc -l

그러나 이것은 하나의 단어를 찾으려면 작동합니다. “New York”을 입력하면이 명령은 이름이“New”인 모든 행을 계산하고 나머지는 무시합니다 (공백 문자로 인해).

이 상황에서 무엇을 사용해야합니까?


1
우리가 숙제를하도록 하시겠습니까?
JakeGould

내 숙제가 이것이라면 행복 할 것입니다. 여러 시간 동안이 작업을 수행하려고 하는데이 부분에 대한 도움이 필요합니다.
Kleber

2
단일 질문에 여러 질문을 게시하지 마십시오. 질문을하고, 무엇을 시도했고 어디에 갇혀 있는지 보여주십시오.
Paul

첫 번째, 두 번째 및 세 번째 질문은 모두 정규식 또는 파일 이름 확장이라는 문제로 해결됩니다. 학습 자료에 대한 링크가 필요한 경우 회신하십시오 .
godDLL

@dogDLL 제발, 나는 기쁠 것이다. 나는 이것을 공부하고 있지만 이것을 해결하기에 충분한 재료를 찾을 수 없었다.
Kleber

답변:


1

나는 당신을 위해 숙제를하지 않고 다소 노력하고 도울 것입니다-

질문 1-파일 나열 : "?" 문자는 정확히 1 (널이 아님) 와일드 카드 문자를 나타내고 "*"문자는 0 개 이상의 문자를 나타냅니다.

질문 2-ls -l은 줄의 시작 부분에 각 파일에 대한 권한을 표시하고 cut 명령을 사용하여 문자 또는 문자 범위를 선택할 수 있습니다. ls -l의 경우, 세 번째 문자가 "w"이면 소유자에게 쓰기 권한이 있음을 의미합니다.

질문 3-몇 가지 빠진 부분이 있습니다. "*"문자를 사용하지 않는 방식으로 grep을 사용하는 경우 grep이 지정된 하위 문자열을 찾고 있습니다. '및'문자는 공백 문자를 포함하여 문자열을 단일 매개 변수로 지정하는 데 사용됩니다. '\'문자는 나중에 문자가 해석되는 문자가 아니라 셸에서 확장하는 문자로 해석됩니다. (이 답변은 btw 이상의 솔루션을 3 개 이상 제공합니다)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.