이 명령은 다음의 모든 비 디렉토리를 표시합니다 /
.
find / -maxdepth 1 -type f
당신이 만든 후에는 절대적으로 확실 어떤 파일을 유지할 것인지를이없는, 당신은 사용할 수 있습니다 :
find / -maxdepth 1 -type f -delete
더 안전한 방법은 보존하려는 항목을 삭제하지 않도록 다른 위치로 옮기는 것입니다.
mkdir /root/preserve
find / -maxdepth 1 -type f -exec mv -- "{}" /root/preserve/\;
파일뿐만 아니라, 당신은 또한 가지고있는 경우 디렉토리 는 파일 시스템의 루트에 추가 한 것으로, 이것은 수있는 자동화에서 LSB 디렉토리 제외하여 자동화 할 수 mv
또는 rm
에 퍼지 것들로 우리부터있는 거 거래, 정직하게,하지만를 파일 시스템의 근원이라면, 가능한 경우 수동으로 수행하는 것이 좋습니다.
이것이 가능하지 않은 경우 다음과 같은 방법으로 트릭을 수행 할 수 있습니다.
#!/bin/bash
declare -a excludes
for item in root sys 'lost+found' mnt home proc etc opt boot lib lib64 libx32 sbin media srv dev var usr bin tmp run; do
excludes+=("$item")
done
if ! [[ -d /root/preserve ]]; then
mkdir -p /root/preserve
fi
IFS="\n"
for item in find / -type d -maxdepth 1; do
really=true
for exclude in ${excludes[@]}; do
if [[ "$exclude" == "${item#/}" ]]; then
really=false
fi
done
if [[ "true" == "$really" ]]; then
mv -- "$item" /root/preserve/
fi
done
비명 테스트를 통과 한 후 (즉, 시스템이 계속 실행 중이고 고뇌하지 않는 경우)의 내용을 제거 할 수 있습니다 /root/preserve/
.
중요 사항 : 당신이 무엇을하든,의 순열을 실행하는 것에 대해 생각조차하지 마십시오 rm -fr [ANYTHING GOES HERE] /
.