내가 무엇을 이해합니까?버팀대 확장예, 하지만 어떻게 사용하는 것이 가장 좋은지 모르겠습니다.
언제 사용하나요?
자신만의 노하우가 있다면, 유용하고 좋은 예시를 가르쳐주세요.
답변1
경로 이름이 매우 긴 경우 중괄호 확장이 유용합니다. 나는 이것을 빠른 방법으로 사용합니다백업 파일:
cp /a/really/long/path/to/some/file.txt{,.bak}
/a/really/long/path/to/some/file.txt
에 복사됩니다/a/really/long/path/to/some/file.txt.bak
당신은 또한 수주문하다. 한번은 웹에서 많은 페이지를 다운로드하기 위해 다음과 같이 했습니다.
wget http://domain.example/book/page{1..5}.html
또는
for i in {1..100}
do
#do something 100 times
done
답변2
중괄호 확장은 대규모 디렉터리 구조를 만들 때 매우 편리합니다.
mkdir -p dir1/{subdir1,subdir2}/{subsubdir1,subsubdir2}
이것이 당신에게 줄 것입니다
find dir1 -type d
dir1
dir1/subdir1
dir1/subdir1/subsubdir1
dir1/subdir1/subsubdir2
dir1/subdir2
dir1/subdir2/subsubdir1
dir1/subdir2/subsubdir2
한 단계 더 나아가 중괄호 확장 안에 중괄호 확장을 넣을 수도 있습니다.
mkdir -p dir1/{subdir{1,2}}/{subsubdir{1,2}}
그러면 위의 예와 동일한 디렉터리 구조가 제공됩니다.
답변3
타이핑을 줄이고 싶을 때 이것을 사용합니다.
geany /path/to/file1 /path/to/file2
# versus
geany /path/to/file{1,2}
다른 예시:
wajig install libpam0g-dev libiw-dev libdb-dev
# versus
wajig install lib{pam0g,iw,db}-dev
답변4
나에게 있어서 몇 가지 일반적인 시나리오는 다음과 같습니다.
이름 바꾸기:
mv myText.{txt,tex}
또는
mv myText.tex{,.old}
또는
cp myText.tex{,.backup}
(마지막 두 작업에 버전 제어를 사용하면 덜 혼란스러울 수 있지만)
비교를 위해(이미 언급함):
diff path{1,2}/a.txt