
텍스트 파일을 읽고 텍스트 파일의 모든 개별 단어 수를 계산하는 작업을 수행하는 쉘 스크립트를 작성해야 합니다.
이러한 작업을 수행하는 데 필요한 모든 명령이 있지만 텍스트 파일을 쉘 스크립트에 입력하여 명령을 통해 사용하려면 어떻게 해야 합니까?
그래서 제가 사용하는 명령은 다음과 같습니다. 스크립트에서 변수를 호출할 수 있도록 text.txt를 변수로 사용하려면 어떻게 해야 할까요?
tr '[A-Z]' '[a-z]' < text.txt
답변1
간단하게 사용할 수 있습니다명령 대체:
variable=`cat text.txt`
echo $variable
또는 bash에서:
variable=$(cat text.txt)
와 같다:
variable=`tr '[A-Z]' '[a-z]' < text.txt`
답변2
tr 및 wc와 같은 도구는 파일에 대해 작동할 수 있습니다. 당신은하지 않습니다가지다문자열을 stdin에 전달합니다. 귀하의 질문에 답변하려면:
스크립트에서 변수를 호출할 수 있도록 text.txt를 변수로 사용하려면 어떻게 해야 합니까?
이에 대한 구문은 다음과 같습니다.
input=text.txt # or other file name
tr '[A-Z]' '[a-z]' $input
답변3
예시 파일
foo
bar
foo bar
foobar f0o b@rred
다음을 통해 생성됨
echo -e 'foo\n\t\tbar\n foo bar\nfoobar f0o b@arred' | tee -a /tmp/foo.bar
Bash 변수의 파일 지속성(속기을 위한 $(cat file)
)
v="$(</tmp/foo.bar)"
다른 명령에 대한 입력으로 변수 사용(인쇄할 수 없는 문자 제거)
sed 's#@#a#; s@0@o@' <<<"${v//[![[:print:]]]}" | tail -1
마지막 줄을 출력해야 하며, 다음으로 교체 해야 @
합니다 .a
0
o
foobar foo barred
또한 제가 조사하고 싶은 것 중 하나는 mkfifo
text.txt 구문 분석에 행운이 있기를 바랍니다.