find. -type f -path "./*.a/processed/*" -exec sh -c '
for path; do
prefix=${path%%.a/processed*}
cp "$path" "test/${prefix##*/}_${path##*processed/}"
done
' sh {} +
Опция -type f
ищет обычные файлы по заданному пути, а опция -exec
запускает сценарий оболочки с результатом find
в качестве аргументов({} +
). В циклеfor
-каждый аргумент присваивается переменной path
.
Пример :Если переменная path
равна ./20070214_014700.a/processed/AZ.AS..HHZ
, то
prefix=${path%%.a/processed*}
удаляет суффикс ->./20070214_014700
${prefix##*/}
удаляет префикс к первому/
->20070214_014700
${path##*processed/}
также удаляет префикс и оставляет имя файла ->AZ.AS..HHZ
Результирующее имя целевого файла команды cp
— test/20070214_014700_AZ.AS..HHZ
.
Отредактируйте конфигурацию вашей виртуальной машины,
sudo virsh edit VMname
и добавьте
<interface type="network">
<mac address="00:00:00:00:00:00"/> # Give it some MAC address
<source network="link-local"/>
<model type="virtio"/>
<address type="pci" domain="0x0000" bus="0x02" slot="0x00" function="0x0"/> # bus 0x02 since it's 2nd
</interface>
Поскольку вы, очевидно, используете RHEL8, тип virtio
должен иметь доступные модули ядра. Вы можете попробовать <model type="e1000e"/>
для более медленного, но более поддерживаемого типа.