Отключить аппаратные устройства Ethernet при запуске

Возможное решение для mv150 файлов:

mv `find ./ -maxdepth 1 -type f | head -n 150` "$destdir"

Замените mvна cpдля копирования.

Вот тестовый случай:

mkdir d1 d2
cd d1
touch a b c d e f g h i j k l m n o p
cd ../
mv `find ./d1 -type f | head -n 5` ./d2/

И результат:

ls d1 d2
d1:
b  c  d  e  g  h  i  k  m  n  o

d2:
a  f  j  l  p

Правка:

Вот простой скрипт, который ответит на ваш комментарий:

#!/bin/sh
# NOTE: This will ONLY WORK WITH mv.
# It will NOT work with cp.
#
# How many files to move
COUNT=150
# The dir with all the files
DIR_MASTER="/path/to/dir/with/files"
# Slave dir list - no spaces in the path or directories!!!
DIR_SLAVES="/path/to/dirB /path/to/dirC /path/to/dirD"

for d in $DIR_SLAVES
do
    echo "Moving ${COUNT} to ${d}..."
    mv `find ${DIR_MASTER} -maxdepth 1 -type f | head -n ${COUNT}` "${d}"
done

exit

ПРИМЕЧАНИЕ: Пример сценария не тестировался, но должен работать.

1
26.03.2017, 12:23
1 ответ

Вы можете попробовать использовать правило udev.

Например, вы можете создать файл /etc/udev/rules.d/99-disable-eth.rules со следующим содержанием:

ACTION=="add", SUBSYSTEM=="net", SUBSYSTEMS=="pci", RUN+="/bin/sh -c 'echo 1 >/sys/bus/pci/devices/0000\:04\:00.0/remove'"

Не стесняйтесь настраивать его дальше, чтобы добавить более конкретные элементы, такие как атрибут поставщика, имя интерфейса и т.д.

Посмотрите на http://www.reactivated.net/writing_udev_rules.html для большего количества примеров и дополнительной информации о написании правил udev.

0
28.01.2020, 00:58

Теги

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