NetworkManager와 상호 작용하지 않고 무선랜 모니터링 모드를 시작하기 위해 BASHScript를 개발 중이지만 이 기능을 사용하는 데 문제가 있습니다.
serial_setup(){
local file_name=$1
while IFS =, read PhysicalDevice ItfAlias ItfMode;
do
iw $PhysicalDevice interface add $ItfAlias type $ItfMode
ifconfig $ItfAlias up
done < file_name
}
위의 함수는 다음 형식의 텍스트 파일을 읽습니다.
PhysicalDevice1,alias1,mode1
PhysicalDevice2,alias2,mode2
PhysicalDevice3,alias3,mode3
오류의 원인과 최선의 해결책을 찾아야 합니까?
편집하다:전체 코드는 다음과 같습니다.MM 스크립트 여기에 코드를 붙여넣고 서식을 지정하는 데 문제가 있으므로 Paste`bin을 사용해야 합니다.
답변1
$
변수에 a를 잊어버린 것 같습니다 . 또한 몇 가지 다른 변수를 큰따옴표로 묶는 것을 잊었습니다.
serial_setup () {
local file_name="$1"
while IFS=, read PhysicalDevice ItfAlias ItfMode; do
iw "$PhysicalDevice" interface add "$ItfAlias" type "$ItfMode"
ifconfig "$ItfAlias" up
done <"$file_name"
}