Чтобы декодировать HTML-объекты с помощью jQuery, просто используйте эту функцию:
function html_entity_decode(txt){
var randomID = Math.floor((Math.random()*100000)+1);
$('body').append('<div id="random'+randomID+'"></div>');
$('#random'+randomID).html(txt);
var entity_decoded = $('#random'+randomID).html();
$('#random'+randomID).remove();
return entity_decoded;
}
Как использовать:
Javascript:
var txtEncoded = "á é í ó ú";
$('#some-id').val(html_entity_decode(txtEncoded));
HTML:
<input id="some-id" type="text" />
Я интерпретировал бы Ваши требования, поскольку "находят все подкаталоги, которые содержат все определенные файлы"
#!/bin/bash
parent_dir="$1"
shift
find "$parent_dir" -type d |
while IFS= read -r subdir; do
all_present=true
for file in "$@"; do
if [[ ! -f "$subdir/$file" ]]; then
all_present=false
break
fi
done
$all_present && echo "$subdir"
done
, "IFS =" и "читала,-r" части гарантируют, что значение "dir" содержит фактическое имя каталога, даже если она включает пробелы или специальные символы.
Если я понимаю правильно, что Вы хотите сделать, это - решение:
#!/bin/sh
USAGE="Usage: [110] dir file1 file2 ... fileN\nto find all subdirectories of dir that contain all the given files.\n"
if [ "$#" == "0" ]; then
printf "$USAGE"
exit 1
fi
ARG=""
DIR=$1
shift
while (( "$#" )); do
ARG="$ARG -exec test -e \"{}/$1\" \; "
shift
done
cmd="find $DIR -type d $ARG -print"
eval $cmd
то, Что это делает, является этим:
использование find ... -type d
для нахождения всех подкаталогов (включая каталог данными как первый параметр). test -e
команда проверяет, существует ли файл. Таким образом для данного каталога мы должны проверить все файлы, данные в командную строку: тестовый-e/path/to/directory/file1 тестирует тестовый-e/path/to/directory/file3-e/path/to/directory/file2... Эти /path/to/directory
{}
- единственный результат находки. Затем находить-параметр -exec
может использоваться для проверки на единственный файл. Для проверки на все файлы нескольких -exec test
, параметры необходимы. Так сборка цикла с условием продолжения список там параметров, затем этот список соединен в единственной команде и оценен.
Весело проводят время...