Мне нравится использовать Vagrant для такой настройки. Вы можете либо использовать стандартные бокс-файлы CentOS/Ubuntu/Debian(.box
)в качестве начальных базовых боксов, либо вы можете начать со стандартного ISO и создать с его помощью свой собственный бокс-файл Vagrant.
Здесь находятся.box
файлы , которые обычно используются большинством:
Теперь возьмите один из образцов Vagrantfile
с:
$ cat Vagrantfile
Vagrant.configure("2") do |config|
config.vm.box = "centos/7"
end
или вы можете использовать один из моих в моем репозитории github.com vagrantfiles . Теперь запустите его и войдите в него по SSH:
$ vagrant up
$ vagrant ssh
После входа настройте его. Когда вы закончите, выйдите из виртуальной машины. Теперь вы можете упаковать его:
$ vagrant package --base my-centos7
После этого вы получите файл.box. На этот файл.box можно ссылаться в других Vagrantfile
для дальнейшего повторного использования.
.box
файлами Если вы просто хотите загрузить файл .box
, вы можете использовать vagrant
, чтобы сделать это следующим образом:
$ vagrant box add centos/7
Дополнительные сведения об использовании см. в vagrant box
.
Поскольку у вас есть GNU sed, вы можете установить GNU awk. С GNU awk для мульти -char RS и RT:
$ awk -v RS='href="http[^"]+.pdf"' -F'"' 'RT{$0=RT; print $2}' file
https://ecole-euclid.cnrs.fr/wp-content/uploads/EDE2019_Henrot-Versillé-C1_L1.pdf
https://ecole-euclid.cnrs.fr/wp-content/uploads/EDE2019_Henrot-Versillé_C1_L2.pdf
https://ecole-euclid.cnrs.fr/wp-content/uploads/EDE2018_Henrot-Versillé_C3.pdf
https://ecole-euclid.cnrs.fr/wp-content/uploads/EDE2018_Martinelli_C2_L1_Bayesian.pdf
https://ecole-euclid.cnrs.fr/wp-content/uploads/EDE2018_Martinelli_C2_TD_Bayesian.pdf
в противном случае использование любого awk в любой оболочке на каждом компьютере UNIX:
$ awk '{
while ( match($0,/href="http[^"]+.pdf"/) ) {
split(substr($0,RSTART,RLENGTH),f,/"/)
print f[2]
$0 = substr($0,RSTART+RLENGTH)
}
}' file
https://ecole-euclid.cnrs.fr/wp-content/uploads/EDE2019_Henrot-Versillé-C1_L1.pdf
https://ecole-euclid.cnrs.fr/wp-content/uploads/EDE2019_Henrot-Versillé_C1_L2.pdf
https://ecole-euclid.cnrs.fr/wp-content/uploads/EDE2018_Henrot-Versillé_C3.pdf
https://ecole-euclid.cnrs.fr/wp-content/uploads/EDE2018_Martinelli_C2_L1_Bayesian.pdf
https://ecole-euclid.cnrs.fr/wp-content/uploads/EDE2018_Martinelli_C2_TD_Bayesian.pdf
Просто направьте этот вывод на xargs -n 1 curl -O
, чтобы загрузить PDF-файлы (при отсутствии пробелов в URL-адресе ).