Дуга Linux не соединяется с беспроводной сетью

  • Можно использовать усовершенствованные globbing шаблоны в некоторых оболочках для соответствия всем файлам в каталоге за исключением тех, которые соответствуют конкретному шаблону. Например, в ksh, ударе или zsh, команде

    shopt -s extglob   ## needed in bash only
    setopt ksh_glob   ## needed in zsh only
    mv /source/!(*.bak) /destination
    

    переместит все файлы в /source кому: /destination за исключением соответствия файлов *.bak. В zsh можно также записать /source/^*.bak если Вы первый показ setopt extended_glob, и в более общем плане (снова требование setopt extended_glob) /source/*~*.bak (или /source/a*~*.bak для всех файлов, имя которых начинается a за исключением .bak файлы, и т.д.).

  • Zsh имеет массовую команду копии/перемещения/ссылки, которая может использоваться, среди других, для перемещения всех файлов за исключением тех, которые соответствуют шаблону. Например, следующая команда перемещает все файлы кроме *.bak от /source кому: target, и добавляет .bak к их имени в процессе:

    autoload zmv
    zmv '/source/(*)~*.bak' '/target/$1.bak'
    
  • Существует несколько названных команд rename плавание вокруг. На Debian и Ubuntu, /usr/bin/rename сценарий жемчуга, который перемещает файлы в новое имя, сгенерированное выражением жемчуга. Можно исключить файлы из переименования, не генерировав новое имя, если файл должен быть исключен. Например, следующая команда (использующий этот конкретный rename программа), перемещает все файлы кроме *.bak от /source кому: /target:

    rename 's!/source!/target! unless m!\.bak$!' /source/*
    
  • Можно использовать find управляйте для выбора файлов, которые Вы хотите переместить. Например, следующая команда перемещает все регулярные файлы кроме *.bak в /source или подкаталог в /target (обратите внимание, что структура каталогов сворачивается):

    find /source -type f \! -name '*.bak' -exec mv {} /target/ \;
    

    или (более эффективный, если существует много файлов для перемещения),

    find /source -type f \! -name '*.bak' -exec sh -c 'mv "$@" "$0"' /target/ {} +
    
  • rsync обобщение cp и scp с очень мощным включают/исключают правила. Например, следующая команда копирует все файлы кроме *.bak в /source или подкаталог в /target, уважение структуры каталогов:

    rsync -a --exclude '*.bak' /source/ /target/
    
  • pax (среди других вещей) другой cp на стероидах. Его правила исключения совсем не так же мощны как rsync's, но он имеет дополнительную способность переименовать файлы, поскольку они копируются. При переименовании файла к пустой строке это исключено из копии. Например, следующая команда копирует все файлы кроме *.bak в /source или подкаталог в /target, и переименовывает файлы к .bak мимоходом.

    cd /source && pax -rw -pp -s '/.*\.bak$//' -s '/$/.bak/' . /target/
    

    Пример выше имеет неудачный побочный эффект создания названных каталогов foo.bak, которого можно избежать путем объединения find с pax:

    { cd /source && find . -type f; } | \
    pax -rw -pp -s '/.*\.bak$//' -s '/$/.bak/' /target/
    
3
14.11.2011, 10:09
3 ответа

Попытайтесь проверить, что нет никакого dhcpcd, застрявшего в a sudo dhcpcd -k. Я получаю не соединенные ошибки, когда я сначала использую свой телефон на базе Android w/ограничивающий (за которым я просто работаю sudo dhcpd вручную) и затем пытающийся использовать Wi-Fi.

1
27.01.2020, 21:32
  • 1
    Сделайте Вы имеете в виду sudo dhcpcd? –  l0b0 16.10.2013, 23:44

Я использовал wicd на Arch в прошлом. Я прекратил использовать его из-за проблем как это. Попробуйте NetworkManager/dhclient.

0
27.01.2020, 21:32

У меня есть свой ноутбук Linux Arch, подключаются с помощью сценария оболочки. Это для одного из WEP (я знаю, я знаю...), маршрутизаторы, которые я использую:

#!/bin/bash

DEV=$(iw dev | awk '/Interface/ {interf=$2} END {print interf}')
PIDFILE=/var/run/dhcpcd-$DEV.pid


if [[ -f $PIDFILE ]] && kill -0 $(cat /var/run/dhcpcd-$DEV.pid)
then
        dhcpcd -k $DEV
fi

ifconfig $DEV down
sleep 1
iwconfig $DEV mode managed
ifconfig $DEV up
iwconfig $DEV channel 1
iwconfig $DEV  key 4567ABCDEF
iwconfig $DEV essid 'ACTIONTEC'
iwconfig $DEV ap 00:0d:51:BF:FE:E1

sleep 5
dhcpcd --noarp $DEV

Каждый шаг делает всего одну вещь, таким образом, легко выяснить, где проблема заключается. Ноутбук раньше выполнял Slackware, под которым я записал сценарий, но это, кажется, работает просто великолепно при Arch также.

0
27.01.2020, 21:32
  • 1
    Хороший, a set -e наверху сделал бы сбой сценария на первой провальной команде также :) –  Mark K Cowan 24.11.2014, 10:49

Теги

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