지난 밤에 실수로 실수로 File-Server의 1800GB가 삭제되었습니다. !(lost+found) 내 터미널 에뮬레이터는

어제이 명령을 실행했는데 테스트 시스템에서 생각했지만 SSH를 통해 연결된 파일 서버였습니다.

sudo rm -rf /tmp/* !(lost+found)

내 터미널 에뮬레이터는 Konsole입니다. 내 시스템은 데비안 7입니다.

의문:

이 명령은 / tmp에있는 파일 이외의 파일을 삭제 했습니까?



답변

bash의 올바른 구문은 다음과 같습니다.

rm /tmp/!(lost+found)

@goldilocks 가 주석에 듯이 원래 명령은 쿼리를 확장합니다 ( /tmp폴더의 모든 파일을 삭제 한 다음 계속 진행하고 현재 작업 폴더의 모든 파일을 삭제 home합니다).

일부 데이터를 복구 할 수 있는지 확인할 수 있습니다. 리눅스 데이터 복구에 관한 질문이 있습니다 .


답변

!(lost+found)당신의 rm명령 아마도 치명적인 실수를했다 :

1978  rm -rf /tmp/* !(lost+found)
1979  sudo rm -rf /tmp/* !(lost+found)

나는 정확히 무엇 bash을하고 있는지 알지 못하지만 아래 명령은 내 /tmp/모든 디렉토리와 현재 디렉토리 (현재 ~) 를 모두 인쇄합니다 .

echo /tmp/* !(lost+found)


답변