STATUS='yes'
FOO='pretty'
BAR='purple'
for var in STATUS FOO BAR; do
# declare -p $var | cut -d ' ' -f 3- >> variable.file
declare -p $var >> variable.file
done
반품
declare -- STATUS="yes"
declare -- FOO="pretty"
declare -- BAR="purple"
-f
옵션이 무엇을 의미하는지 모르시나요 ? 첨부하지 않으면-f
"바이트, 문자 또는 필드 목록을 지정해야 합니까?"라는 메시지가 나타납니다.수동설명하다
-f
동작이나 표시를 함수 이름과 정의로 제한
cut -d ' '
3개의 필드로 나눕니다.declare
,--
,STATUS="yes"
?- 2가 정확하면
3-
STATUS="yes" FOO="pretty" BAR="purple"인 마지막 필드를 얻게 됩니다.
전반적으로 point1에 대해서는 결과가 point2, point3과 일치하기 때문에 확신할 수 없지만, 내 point2, point3 해석이 올바른지 확인하고 싶습니다.
답변1
cut
, 를 사용하여 -f
추출할 필드를 지정합니다. "필드"는 구분 기호(귀하의 경우 문자)로 구분됩니다 Space. 각각은 Space필드를 구분하므로 데이터에 여러 Space문자가 있는 경우( 를 사용하여 확인 od -bc your.file
) 에 따르면 여러 개의 "필드"가 있습니다 cut
.
예를 들어, 다른 도구에는 awk '{print $3} your.file
"필드"에 대한 개념이 다릅니다.
그건 그렇고, 귀하의 man
페이지 참조는 에서와 같이 스위치에서 온 것이 아닙니다 man cut
. -f
이는 전역적인 의미가 없습니다. 즉, 프로그램마다 다른 의미를 갖습니다.