USB 플래시 드라이브를 지우고 파일 시스템을 다시 만듭니다.

USB 플래시 드라이브를 지우고 파일 시스템을 다시 만듭니다.

나는 이것을 사용하여 USB 플래시 드라이브를 지우고 FAT 파일 시스템을 다시 만듭니다.

dd if=/dev/zero of=/dev/sdb bs=1M    #I don't need more advanced wiping
fdisk /dev/sdb
(a few keystrokes to select partition type, etc.)
mkfs.fat /dev/sdb1

몇번이나 수동으로 키를 눌러야 한다는 사실이 짜증났습니다. 개입 없이 이 모든 것을 어떻게 한 단계에서 수행할 수 있습니까? 그것은 다음과 같습니다:

dd if=/dev/zero of=/dev/sdb bs=1M && ??? &&& mkfs.fat /dev/sdb1

답변1

fdisk여기 문서 구문을 사용하면 비대화형으로 사용할 수 있습니다.

fdisk /dev/sdb <<EOF
n
p



t
b
p
q
EOF

이는 제가 사용한 예시일 뿐이므로 p어떠한 q수정도 하지 않았습니다. w순서를 확인한 후 사용합니다.

빈 줄은 단독에 해당합니다 Enter. 요점은 이런 방식으로 키 입력을 전달할 수 있다는 것입니다.

또는 다음 줄(두 EOF-s 사이)을 파일에 쓸 수 있습니다(예 fdisk.commands: ).

fdisk /dev/sdb < fdisk.commands

또는 파일이 없는 경우(댓글에서 Rastapopoulos에게 감사드립니다):

fdisk /dev/sdb <<< $'n\np\n\n\n\nt\nb\np\nq'

다른 방법:

printf '%s\n' "n" "p" "" "" "" "t" "b" "p" "q" | fdisk /dev/sdb

게다가sfdisk. 해당 구문이 더 적합하다는 것을 알 수 있습니다.

답변2

@KamilMaciorowski의 답변(그에게 전적으로 감사함)을 바탕으로 이것이 제가 사용한 것입니다.

sudo dd if=/dev/zero of=/dev/sdb bs=1M && sudo fdisk /dev/sdb <<< $'n\np\n\n\n\nt\nb\np\nw\n' && sudo mkfs.fat /dev/sdb1

관련 정보