Ссылка в HTML не может выполнить файл .sh

Ссылка в HTML не может выполнить файл .sh

У меня есть index.htmlссылка, которая должна удалить все *.zip из /mnt/sda1/down.

Когда я нажимаю на ссылку, начинается загрузка, а не выполнение скрипта sh.

Вот index.htmlскрипт sh:

#!/bin/sh
cd /mnt/sda1/down
rm *.zip 

...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<form id="form1" name="form1" method="post" action="">
  <label><a href="delete.sh">DELETE ALL</a>  </label>
</form>
</body>
</html>

решение1

Ваша ссылка ведет на файл, который ваш браузер не распознает, поэтому предполагает, что это загрузка.

Размещение этой ссылки в <form>ничего не меняет. Цель элемента <form>— собрать параметры перед вызовом URL, указанного в атрибуте «action» (обычно с <input type="submit">элементом в форме).

Даже не ясно, есть ли здесь сервер. Если да, то какой его тип?

решение2

HTML не обладает такой силой. Вам нужно использовать PHP, поскольку он может взаимодействовать с вашей ОС, поскольку это язык бэкэнда.

Что вы можете сделать, так это создать ссылку на PHP-файл, и при нажатии на ссылку будет осуществлен переход к PHP-файлу, который выполнит скрипт, а затем вы можете указать ему перенаправить вас обратно на домашнюю страницу или что-то в этом роде:

Индекс.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<a href="delete.php">DELETE ALL</a>
</body>
</html>

удалить.php

<?php
echo shell_exec('sh /path/to/delete.sh');
header('Location: /'); #this will take you back to the home page
?>

Оригинальный пост:https://stackoverflow.com/questions/7397672/how-to-run-a-sh-file-from-php

Связанный контент