Нажмите Ctrl-Alt-e с командой, используя записанные псевдонимы (готовые к запуску), и Bash развернет ее . Ctrl-Alt-e - привязка по умолчанию для команды readline shell-expand-line
.
Каждый раз, когда вы нажимаете Ctrl-Alt-e Bash расширяет один слой псевдонима, нажимайте его несколько раз, пока ваша команда не расширится настолько, насколько вам нужно.
Если ваша Мета клавиша не Alt , замените ее или нажмите Escape Ctrl-e .
Существует также функция alias-expand-line
, которая по умолчанию не привязана, а только расширяет псевдонимы.
Попробуйте сделать это, используя Bash :
while read url ; do
ret=$(curl -I -s "$url" -o /dev/null -w "%{http_code}\n")
((ret==200)) && echo "$url" >> new_list_URL
done < list_URL
или режим POSIX:
while read url ; do
ret=$(curl -I -s "$url" -o /dev/null -w "%{http_code}\n")
[ $ret -eq 200 ] && echo "$url" >> new_list_URL
done < list_URL
Проверка Человек Curl
Может быть, это и не лучший способ, но вы можете использовать и этот простой для понимания скрипт оболочки:
while read i
do
wget --spider $i > /dev/null 2>1
if [ $? == 0 ]
then
echo $i >> validlist.txt
fi
done
Запустите этот скрипт оболочки как ./wget_check.sh < urllist.txt
, где wget_check.sh
- имя скрипта, а urllist.txt - текстовый файл, содержащий URL-адреса.
Этот скрипт в основном выполняет wget --spider
против всех URL в списке и добавляет URL в другой файл 'validlist.txt', если URL возвращает правильный ответ 200 OK.
Опция --spider
будет 'ползать' по URL-адресам и не будет загружать файлы.
Вывод не будет произведен, так как вывод будет перенаправлен в /dev/null.
Каждая wget
вернет ненулевое возвращаемое значение, если не получит ответа 200 OK
Я использую это на -вкладыше
time xargs -n 1 -P 20 \
curl -o /dev/null --silent --head --write-out '"%{url_effective}","%{http_code}"\n' \
< "URLs.txt" \
| tee URLs-status_results.csv
И получится красиво URLs-status_results.csv
и время на это уйдет.