다음을 사용하면 예상대로 결과가 나타납니다. $ echo {8..10} 8 9 10 다음 중괄호 확장을 쉽게 사용하여 다음과 같은 결과를 얻으려면 어떻게해야합니까? $ echo {8..10} 08 09 10 나는 이것이 seq(시도하지 않은)을 사용하여 얻을 수 있지만, 내가 찾고있는 것이 아닙니다. 유용한 정보는 내가이 bash 버전으로 제한되어 있다는 것입니다. ( zsh솔루션이 있지만 …
$var inbash에서 범위와 함께 쉘 괄호 확장 을 사용 하고 싶습니다 . 단순히 퍼팅 {$var1..$var2}이 작동하지 않아서 "측면"으로 갔다 ... 다음은 효과가 있지만 약간 혼란입니다. # remove the split files echo rm foo.{$ext0..$extN} rm-segments > rm-segments source rm-segments 더 "정상적인"방법이 있습니까?
내가 명명 된 15,000에 대한 파일이 file_1.pdb, file_2.pdb, 수행하여 순서대로 몇 천에 대한 등 I CAN 고양이 : cat file_{1..2000}.pdb >> file_all.pdb 그러나 15,000 파일에 대해이 작업을 수행하면 오류가 발생합니다. -bash: /bin/cat: Argument list too long 나는이 문제가 해결함으로써 해결되는 것을 find . -name xx -exec xx보았지만 파일이 결합 된 …
이: $ echo {{a..c},{1..3}} 이것을 생성합니다 : a b c 1 2 3 어느 것이 좋지만 설명하기가 어렵습니다. $ echo {a..c},{1..3} 준다 a,1 a,2 a,3 b,1 b,2 b,3 c,1 c,2 c,3 이것은 어딘가에 기록되어 있습니까? 강타 참조 (그것을 사용하는 예제있는 경우에도)을 언급하지 않습니다.
스크립트에 명령 옵션을 추가하는 것과 같은 변수를 통해 stdout 및 stderr을 리디렉션하는 방법이 있습니까? 예를 들어 스크립트가 있습니다. #!/bin/bash -x TEST=">/dev/null 2>&1" OPT='-p -v' mkdir $OPT 123/123/123 $TEST OPT가 -p아무런 문제없이 대체 되고 bash가 옵션으로 해석한다는 것을 알 수 있습니다. 그러나 리디렉션은 디렉토리 이름으로 해석됩니다. $ ./test.sh + TEST='>/dev/null 2>&1' …
로 man mkdir상태 -p, --parents no error if existing, make parent directories as needed 이 명령을 실행할 때 mkdir -p work/{F1,F2,F3}/{temp1,temp2} 그것은이 같은 폴더 구조를 만들고 work폴더에 다음 부모 F1, F2, F3하위 폴더 및 temp1및 temp2세 개의 상위 폴더에서 하위 폴더 F1, F2, F3. work -F1 -temp1 -temp2 -F2 -temp1 …
echo를 통과 할 때 위 명령의 출력은 다음과 같습니다. # echo systemctl\ {restart,status}\ sshd\; systemctl restart sshd; systemctl status sshd; 출력을 터미널에 붙여 넣더라도 명령이 작동합니다. 그러나 명령을 직접 실행하려고하면 다음과 같은 결과가 나타납니다. # systemctl\ {restart,status}\ sshd\; bash: systemctl restart sshd;: command not found... 두 가지 질문이 있습니다 .. …
포함하는 bash 스크립트 for i in {a,b}-{1,2}; do echo $i; done 인쇄물 a-1 a-2 b-1 b-2 실행될 때. 이것이 {a,b}구조가 확장 됨에 따라 예상 한 것 입니다. 그러나 (또 다른) 스크립트에 v={a,b}-{1,2} echo $v 그것은 인쇄 {a,b}-{1,2} 내가 기대 한 것이 아닙니다. 나는 그것을 인쇄 할 것으로 예상했다 a-1 a-2 …
하위 폴더에서 텍스트 파일을 연결하려고 시도했지만 시도했습니다. cat ./{mainfolder1,mainfolder2,mainfolder3}/{subfolder1}/book.txt > out$var 그러나 이것은 아무것도 반환하지 않았습니다. 따라서 존재하지 않는 'subfolder2'를 추가하려고했습니다. cat ./{mainfolder1,mainfolder2,mainfolder3}/{subfolder1,subfolder2}/book.txt > out$var 그리고 이번에는 파일을 성공적으로 연결하여 문제를 해결했습니다. 왜 이런 일이 발생합니까?
중괄호 확장을 사용하여 파일을 다른 이름으로 동일한 디렉토리에 복사하려고합니다. bash 4.4.18을 사용하고 있습니다. 내가 한 일은 다음과 같습니다. cp ~/some/dir/{my-file-to-rename.bin, new-name-of-file.bin} 하지만이 오류가 발생합니다. cp: cannot stat '/home/xyz/some/dir/{my-file-to-rename.bin,': No such file or directory 이와 같은 간단한 중괄호 확장조차도 같은 오류가 발생합니다. cp {my-file-to-rename.bin, new-name-of-file.bin} 내가 도대체 뭘 잘못하고있는 겁니까?
Bash의 {}괄호 확장 구문으로 쉽게 순열을 만들 수 있습니다. # echo {b,c,d}{a,e,i,o,u} ba be bi bo bu ca ce ci co cu da de di do du /이 가능 방법이 매우 어색 사용을 제외하고 배열과 함께이를 사용하는 경우는 나에게 분명하지 않다 $() echo과eval 중괄호 확장과 함께 배열을 사용하는 간단한 방법이 …