Создайте текстовые файлы из каждой ссылки в списке?

Вы можете попробовать это решение :

TODO для Clickpad для работы со светодиодом:

(Включить предложенный архив для Ubuntu 12.04: https://wiki.ubuntu.com/Testing/EnableProposed После dist-upgrade выполните this:)

  1. Создайте xserver-xorg-input-synaptics с пакетом поддержки led:

     mkdir tmpbuild 
    cd tmpbuild 
    apt- получить исходный код 
    xserver-xorg-input-synaptics d 
    cd xserver-xorg-input-synaptics - * / debian / patches 
    wget https://bugs.launchpad.net/ ubuntu / + source / linux / + bug / 582809 / + attachment / 3183411 / + files / 200-add_led_support_with_double_tap-synaptics-1.6.0-mohegan_V1.patch 
    ls -1 2 * .patch >> series {{ 1}} cd ../ .. 
    sudo apt-get build-dep xserver-xorg-input-synaptics 
    debchange -i 
     

    Добавить комментарии соммы (например , «Добавить поддержку светодиодов двойным нажатием») и выйти.

      debuild -us -uc -i -I 
    sudo dpkg -i ../xserver-xorg-input-synaptics_*.deb
    
  2. Создание модуля dkms для psmouse

      cd .. 
    apt-get source linux-image-`uname -r` 
    sudo mkdir -p / usr / src / psmouse-`uname -r` / src 
    sudo cp linux - * / drivers / input / mouse / * / usr / src / psmouse-`uname -r` / src / 
    sudo gedit / usr / src / psmouse-`uname -r` / dkms. conf 
     

    введите этот текст, сохраните файл и выйдите из gedit: (замените версию ядра текстом , получите с помощью команды ] uname -r . Для меня это 2.6.38-9-generic)

      PACKAGE_NAME = "psmouse" PACKAGE_VERSION = "_ версия вашего ядра _" 
    CLEAN = "rm -f *.* o "
     
    BUILT_MODULE_NAME [0] =" psmouse "MAKE [0] =" make -C $ kernel_source_dir 
    M = $ dkms_tree / $ PACKAGE_NAME / $ PACKAGE_VERSION / build / src psmouse.ko "
    BUILT_MODULE_LOCATION [0] =" src "DEST_MODULE_LOCATION [0] =" / updates "
     
    AUTOINSTALL =" да "
     

    Закройте файл и:

      wget https://bugs.launchpad.net/ubuntu/+source/linux/+bug/582809/+attachment/3183441/+files/synaptics_led_support_v2-ubuntu_12.04.patch -P / tmp 
    cd / usr / src / psmouse-`uname -r` 
    sudo patch -p1 -i /tmp/synaptics_led_support_v2-ubuntu_12.04.patch> sudo dkms add -m psmouse -v `uname -r` 
    sudo dkms build -m psmouse -v `uname -r` 
    sudo dkms install -m psmouse -v` uname -r` 
     

    3) Перезапустить свой компьютер и наслаждайтесь!

Патчи предназначены для исходных текстов 1.6, поэтому вам придется немного изменить их для работы с 1.8

1
28.12.2018, 20:15
3 ответа

Чтобы уточнить вашу xargsпопытку

xargs -L1 sh -c 'f="${0##*/}"; printf "%s\n" "$0" > "${f%.*}.strm"' < file

Первая замена f="${0##*/}"удаляет компоненты пути URL, а вторая "${f%.*}.strm"удаляет и заменяет расширение.

Пр.

$ xargs -L1 sh -c 'f=${0##*/}; printf "%s\n" "$0" > "${f%.*}.strm"' < file
$ head *.strm
==> file_name1.strm <==
http://domain.com/file_name1.mkv

==> file_name2.strm <==
http://domain.com/file_name2.mkv

==> file_name3.strm <==
http://domain.com/file_name3.mkv
2
27.01.2020, 23:18

Отредактировано для исправления ошибок, упомянутых в комментариях, но ответ bellka — лучшая версия этого решения.

Далее ссылки в fileчитаются построчно. Каждая ссылка записывается в файл с именем, содержащим базовое имя ссылки, за которым следует требуемое окончание.

while read link; do
   echo "$link" >$(basename "${link%.mkv}").strm
done <file

То же, что и в один вкладыш:

cat file | while read link; do echo "$link" >$(basename "${link%.mkv}").strm; done
0
27.01.2020, 23:18

Я попытаюсь реабилитировать чистое -решение bash, предложенное @Erwan:

while IFS= read -r link; do
    filename="${link##*/}"
    echo "$link" > "${filename%.mkv}.strm"
done < file
  1. См.https://unix.stackexchange.com/a/209184/230365для объяснения, почему следует использовать IFS= read -rдля чтения строки
  2. ${var##<pattern>}заменяет переменную с самым длинным префиксом, совпадающим с удаленным. См. «Удалить соответствующий шаблон префикса» в разделе «Расширение параметров» в bash (1 ). Есть много других полезных модификаторов расширения параметров
  3. ${var%<pattern>}заменяет переменную кратчайшим суффиксом, совпадающим с удаленным («Удалить соответствующий шаблон суффикса»)
2
27.01.2020, 23:18

Теги

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