정보

6.0 고양이 삭제

6.0 고양이 삭제



We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.

6.0 고양이 삭제 foo /tmp/bar, 고양이 /tmp/bar >, /tmp/foo

7.0 ./bar: 해당 파일이나 디렉토리가 없습니다.

7.0 ./foo: 해당 파일이나 디렉토리가 없습니다.

7.0 ./foo /tmp/bar: 해당 파일이나 디렉토리가 없습니다.

7.0 ./bar /tmp/foo: 해당 파일이나 디렉토리가 없습니다.

7.0 ./bar /tmp/foo /tmp/bar: 해당 파일이나 디렉토리가 없습니다

7.0

NS:

보고 있는 동작은 셸의 글로빙 기능을 사용하기 때문입니다. cat 명령이 설명하는 방식으로 동작하도록 하려면 명시적으로 글로빙 비교를 수행해야 합니다.

if [ "$a" = "$(echo $a | cut -f1 -d/ )" ] , 다음

에코 매치

또 다른

에코가 일치하지 않습니다

파이

cut 명령은 초기 글로빙 작업을 수행하는 데 사용됩니다.

$ echo "foo/bar" | 컷 -f1 -d/

$ echo "foo/bar" | 컷 -f1 -d/

술집

그러면 if 문은 globbing 비교를 수행하고 globbing이 일치하는 경우에만 쉘 표현식을 평가합니다.

일반적으로 globbing 비교는 전통적인 프로그래밍 언어(Python, Ruby 등)보다 셸에서 수행하기가 약간 더 어렵습니다. globbing 기능을 적절하게 사용하고 있는지 확인하는 것이 좋습니다.

NS:

조건에서 = not =~를 사용하고 있기 때문입니다.

당신이 할 때

a =$(echo $a | cut -f1 -d/ )

if [ "$a" = "$(echo $a | cut -f1 -d/ )" ]

그 다음에

에코 매치

또 다른

에코가 일치하지 않습니다

파이

이렇게 비교하는데 공백 때문에 빈 문자열과 같지 않은 $(echo $a | cut -f1 -d/ )와 같지 않습니다.

이 문제를 해결하려면 다음을 수행할 수 있습니다.

if [ "$a" = "$(echo $a | cut -f1 -d/)" ]

그 다음에

에코 매치

또 다른

에코가 일치하지 않습니다

파이

NS:

a =$(echo $a | cut -f1 -d/ )

= 주위에 큰따옴표를 사용하고 끝에 ]를 추가해야 합니다. 이것은 당신이 원하는 것을 줄 것입니다.

a =$(echo $a | cut -f1 -d/ )

if [ "$a" = "$(echo $a | cut -f1 -d/ )" ]

스크립트 끝에 ]를 추가하지 않으면 [ "bar" = "foo/bar" ]는 "bar" = "foo/"가 유효한 표현식이라고 생각하기 때문에 true로 평가됩니다. ]를 끝에 추가하면 첫 번째 부분도 작동하지 않습니다. 큰따옴표로 묶어야 합니다.

$a의 값(및 스크립트의 어느 지점에서든 값)을 읽는 가장 쉬운 방법은 [ 및 case 문을 사용하는 것입니다.

a =$(echo $a | cut -f1 -d/ )

케이스 $a

/foo/bar/) echo "a는 'foo/bar'입니다.", a='' ,,

*) echo "a는 'foo/bar'가 아닙니다", a='foo/bar' ,,

이삭

if [ "$a" = "$(echo $a | cut -f1 -d/ )" ]

이것은 $a의 값을 취하여 알려진 값과 대조하여 확인합니다. 그런 다음 이 case 문은 $를 알려진 값으로 다시 설정합니다. $a의 값이 유효한 값 중 하나가 아니면 화면에 오류 메시지를 인쇄합니다.

이 방법을 사용하면 큰따옴표와 작은따옴표에 문제가 없으며 현재 버전이 작동하지 않는 모든 경우에 올바르게 작동합니다.

이를 수행하는 또 다른 우아한 방법은 일부 GNU 확장을 사용하는 것입니다.

if [[ "$a" = "$(echo $a | cut -f1 -d/)" ]]

[[ 명령은 주어진 문자열이 비어 있으면 true로 평가됩니다. 테스트는 $a 값이 아닌 빈 문자열로 평가되기 때문에 훨씬 더 효율적입니다.


비디오 보기: ଆମରକର ବଆ ମଲଇ ଗହ କହଲ ଭଉଜ ll odia story ll odia gapa video (팔월 2022).

Video, Sitemap-Video, Sitemap-Videos