Это простой способ сделать это, если вам нужно только поддерживать современные браузеры: на кнопку отправки добавить атрибут formaction="/alternate/submit/url"
, например:
Он также работает на теги.
Получено, что старые версии IE (& lt; 10) и Android-браузер (& lt; 4.0) не поддерживают его. Итак, если вам нужно поддерживать старые браузеры, тогда существующие ответы JS, вероятно, будут работать лучше для вас.
Дополнительная информация: http://www.wufoo.com/html5/attributes/13 -formaction.html
DIR1
и DIR2
содержат имена файлов в каталогах 2
и 3
соответственно. Помимо возможных проблем с пробелами или специальными символами в именах файлов, вам придется использовать 2/$i
и 3/$j
. Только $i
и $j
будут ссылаться на файлы с одинаковыми именами в текущем каталоге (родительские элементы для 2
и 3
).
Лучше не анализировать вывод ls
. Вам не нужны две вложенные циклы.
#!/bin/bash
DIR1=2
DIR2=3
for source in $DIR1/*
do
dest="$DIR2/$(basename $source)"
if [ -f "$dest" ]
then
sudo cat "$source" >> "$dest"
fi
done
см. Также https://mywiki.wooledge.org/BashPitfalls#for_f_in_.24.28ls_.2A.mp3.29
В зависимости от ваших потребностей это может быть лучше запустить весь сценарий с sudo
вместо запуска sudo
для каждого файла. Версия выше будет выполнять только cat "$source"
как root. При запуске всего скрипта от имени root это также включает в себя >> "$dest"
.