Как сделать так, чтобы почти все управление файлами Linux чувствительно к регистру, но его команда копирования оболочки 'cp', 'mv' чувствительна к регистру?

Попробуйте это, это программное обеспечение отключается (Eject).

Иногда не работает, просто отключайте устройство для некоторых устройств.

Пример:

I хочу удалить или выбросить мой «Genius NetScroll 120».

Затем я сначала проверил мое подключенное устройство USB

$ lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub Bus 001 Device 003: ID 03f0:231d Hewlett-Packard Bus 001 Device 004: ID 138a:0007 Validity Sensors, Inc. VFS451 Fingerprint Reader Bus 001 Device 005: ID 04f2:b163 Chicony Electronics Co., Ltd Bus 002 Device 009: ID 0458:003a KYE Systems Corp. (Mouse Systems) NetScroll+ Mini Traveler / Genius NetScroll 120 **<----This my Mouse! XDDD**

Хорошо, я нашел свою мышь, у нее есть Bus 002, устройство 009, idVendor 0458 и idProduct 003A, так это информация Опорное устройство о мыши.

Это важно, число автобусов является начать путь имя для устройства и я буду проверять продукт Id и Vendor для обеспечения правильного удаления устройства.

$ ls /sys/bus/usb/drivers/usb/ 1-1/ 1-1.1/ 1-1.3/ 1-1.5/ 2-1/ 2-1.3/ bind uevent unbind usb1/ usb2/

Оплатить по папкам, проверить начало с папкой номер 2, я проверю это, потому что моя шина 002, и один за другим у меня есть чек в каждой папке, содержащей правильный idVendor и idProduct, о моей информации о мыши.

В этом случае я извлечу информацию с помощью этой команды:

cat /sys/bus/usb/drivers/usb/2-1.3/idVendor 0458 cat /sys/bus/usb/drivers/usb/2-1.3/idProduct 003a

Хорошо, путь / sys / bus / usb / drivers / usb / 2-1.3 / матч с моей информационной мышью! XDDD.

Пришло время удалить устройство!

su -c "echo 1 > /sys/bus/usb/drivers/usb/2-1.3/remove"

Подключите USB-устройство снова и снова!

1
задан 1 November 2019 в 09:14

1 ответ

Вы упомянули, что нашли файлы и автозавершение как [1 121] примеры из где Вы требуете нечувствительности к регистру, но даже если это только [1 122] вещи, которые нечувствительны к регистру - а именно, эти find команда и заполнение клавишей Tab Вашей оболочки - можно получить почти весь эффект наличия большинство действия, которые Вы выполняете от оболочки быть нечувствительными к регистру, когда Вы хотите, чтобы они были.

причина состоит в том, что существует три главных ситуации, где Вы вводите имя файла в оболочке:

  1. файл существует, и его местоположение известно. Затем можно просто ввести его путь. В какой-то момент, как Вы делаете - после того как Вы ввели уникальный префикс - можно нажать Вкладку . , Если Вы реконфигурировали заполнение клавишей Tab в своей оболочке для поведения нечувствительные к регистру, нажав Вкладку , изменит случай от того, что Вы ввели к тому из фактического файла. Это работает и на частичные пути/имена файлов и на полные пути/имена файлов, которые отличаются случаем от того из фактического файла.
  2. файл существует и но его местоположение неизвестно. Затем Вы ищете файл. Если Вы используете find для этого, можно просто сказать этому искать нечувствительно к регистру. Обычно это состоит из [1 144] замена эти -name тест с эти -iname тест.
  3. файл еще не существует, и Вы намереваетесь создать его. В этой ситуации, необходимо ввести имя файла с любой капитализацией, которую Вы хотите, чтобы это имело, независимо от того, что или не настраивается для функционирования чувствительно к регистру. (Однако, можно извлечь выгоду из заполнения клавишей Tab оболочки, в котором это работает на любые префиксы пути, которые уже существуют.)

, Хотя /bin/sh в Ubuntu обеспечивается dash, пользовательская оболочка по умолчанию - та, Вы добираетесь, когда Вы входите в систему неграфически или открываетесь, терминал - bash. Большинство пользователей Ubuntu использует bash. Так как это - самая популярная оболочка в Ubuntu, и Вы отметили этот вопрос , я предполагаю, что Вы используете его. Обратите внимание, что способ, которым Вы сделали бы другую оболочку (такой как [1 110]) использует нечувствительное к регистру заполнение клавишей Tab, обычно отличается (и некоторые оболочки не могут, или даже не иметь заполнения клавишей Tab вообще).

способ, которым я рекомендую Вам, делает bash, работают, нечувствительное к регистру заполнение клавишей Tab является первым к [1 127] попытка он в в настоящее время рабочей оболочке путем выполнения команды:

bind 'set completion-ignore-case on'

После выполнения той команды, и названия команд и названия их аргументов имени файла подвергаются нечувствительному к регистру заполнению клавишей Tab. Хотя это делает , применяются в командах как [1 112] и mv, это только происходит при нажатии Вкладки для выполнения завершения. Независимо от того, что текст появляется в команде, пишете ли Вы это, или производится заполнением клавишей Tab, текст, из которого анализируются аргументы команде. Поэтому Вы всегда имеете полный все же эффективный управление того, что и не нечувствительно к регистру.

я не утверждаю, что это - единственное или даже обязательно идеальное решение, но это - довольно общее и безопасное решение. (Вы могли бы в конечном счете хотеть настроить заполнение клавишей Tab далее путем записи пользовательских правил для команд, где Вы не хотите, чтобы оно было нечувствительно к регистру.)

После того, как Вы испытываете нечувствительное к регистру заполнение клавишей Tab и решаете, Вы хотите его на все время , можно включить его постоянно - или пока Вы не решаете отменить изменение - путем добавления того же самого bind строка в конец Вашего ~/.bashrc файл. Как [1 118] init3 говорит , можно сделать это или с командой оболочки или в текстовом редакторе:

echo "bind 'set completion-ignore-case on'" >> ~/.bashrc

Или просто добавляют строку с помощью любимого текстового редактора. Перезапустите свою сессию удара и наслаждайтесь.

(Это от ответа init3 до [1 119], я могу сделать автозавершение Вкладки нечувствительным к регистру в Bash? , Что вопрос показывает некоторые другие способы включить нечувствительное к регистру заполнение клавишей Tab в [1 116], если Вам интересно.)

2
ответ дан 10 November 2019 в 20:02

Другие вопросы по тегам:

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