USB: отключить и снова включить устройство в Linux

No sé qué tan eficiente será, pero podría hacer algo como esto con un hash de matrices anónimas, usando un mappara aplicar la asignación de concatenación de cadenas .=a cada elemento de cada valor hash:

perl -F, -nle '
  $k = shift @F;
  map { $h{$k}[$_].= $F[$_] } 0..$#F 
  }{ 
  for $k (sort { $a <=> $b } keys %h) {
    print join ",", $k, @{ $h{$k} }
  }' file
key,c1,c2,c3......,cn
1,caryes,phoneno,catis,..............,kitehello
2,abchello,defyes,hijno,.............,pothelp
1
18.06.2019, 00:17
1 ответ

Попробуйте с USBDEVFS_RESETioctl.

Если в вашей системе нет утилиты usbresetкак части usbutils, вы можете скомпилировать утилиту изhttps://github.com/gregkh/usbutils/blob/master/usbreset.cс помощью только cc usbreset.c -o usbreset.

На некоторых устройствах (, таких как мой маршрутизатор ), вам придется перезагрузить концентратор, к которому он подключен, а не устройство, чтобы он вступил в силу.

#./usbreset
Usage:
  usbreset PPPP:VVVV - reset by product and vendor id
  usbreset BBB/DDD   - reset by bus and device number
  usbreset "Product" - reset by product name

Devices:
  Number 001/004  ID 062a:4101  2.4G Keyboard Mouse
  Number 001/006  ID 03f0:e111  DeskJet 2130 series
  Number 001/002  ID 05e3:0608  USB2.0 Hub
  Number 001/005  ID 248a:8514  Wireless Receiver
  Number 001/003  ID 05e3:0608  USB2.0 Hub
$./a.out 062a:4101
1
27.01.2020, 23:41

Теги

Похожие вопросы