2010-11-25 4 views
2

파일 시스템 (네트워크 마운트 및 로컬 (usb) 드라이브)에서 작성할 수있는 디렉토리 및 파일 수를 테스트해야합니다. 이제이 bash 라인을 사용합니다 :bash를 사용하여 파일 시스템의 디렉토리 한계를 테스트하는 방법

for i in {0..999999}; do mkdir -p $i; pushd $i; done 

나는 더 잘 할 수 있고 어떻게하는지 알고 싶습니다. (너무 복잡하지 bash는)

+0

'pushd'에 대해서는 잘 모르겠지만'cd' 메쏘드를 사용할 때, 디스크 공간 너머에는 아무런 제한이 없다. –

+1

일반적으로 큰 범위에서 {START..END}를 사용하는 것은 좋지 않습니다. bash가 확장되어 많은 RAM을 사용하게됩니다. – tokland

+0

중요하지 않다. 나는이 상자에 8GB를 가지고있다 ... – Raymii

답변

3
while (true); do 
    mkdir a 
    cd a 
done 

df -i 살펴보고 당신이 수의 개요를해야

+0

나는 'pushd'대신에'cd'를 사용하는 것 이외에 asker의 해결책보다 더 좋은 것을 실제로 볼 수 없다. –

+0

@Ignacio Vazquez-Abrams : 루프는 아니지만 while 루프입니다. 나는 그것이 조금 더 깨끗하다고 ​​생각한다. – thejh

+2

이제는 영원히 돌아가서 하드 드라이브에서 inode, 아기가 울며, 새끼 고양이가 죽을 수 있습니다. –

6

모든 파일/디렉토리는 inode를 사용하여 표현된다 ... ./a/a/a/a/a/a/a/a/a/a/a/a/a/a/a/a/a/a/a/a/a/a/ 같은 것을 작성 당신이 만들거나 사용할 가능성이있는 파일/디렉토리들.

+0

무슨 말도 안되는 방법! – thejh

+0

하지만 훨씬 빠르며 도움이됩니다 ... – Raymii

0

를 CD 방법은 실제로 ... 더 빨리가 ... 내 ext4를 USB 스틱은 약 1,040 폴더에 조롱하기 시작

작동 그리고 네트워크 부분 내 wins2k3의 설정을 테스트하는 것입니다,하지만 내 버추얼 박스는에 실패 왜냐하면 나는 뭔가를 망쳤다 고 생각하기 때문이다 ...

관련 문제