О проблеме ГДЕ для размещения остальной части условия, Подсказка - всегда соблюдать отступы, это, безусловно, упростит задачу :)
Я не тестировал (могу ошибаться), но для начала я бы попробовал что-то вроде этого:
changes="$(cat /home/$USER/.updates.log | grep http)"
if [ "$changes" != 0 ]; then
zenity --question --text "Changes found in:\n<i>$changes</i>\n\nWould you like to update now?"
if [ $? = 0 ]; then
## password
sudo_password="$(gksudo --print-pass --description 'MyScript' -- : 2>/dev/null)"
## check for null entry or cancellation
if [[ ${?} != 0 || -z ${sudo_password} ]]; then
exit 4
fi
if ! sudo -kSp '' [ 1 ] <<<"${sudo_password}" 2>/dev/null; then
exit 4
fi
## notify
notify-send "Applying updates..." -i gtk-dialog-info -t 1000 -u normal &
## proceed to update
cuser="${SUDO_USER:-$USER}"
sudo -Sp '' sudo /usr/local/bin/MyScript <<<"${sudo_password}"
## option to view log
new_update="$(cat /home/$USER/.updates.log | grep 'MyScript completed at ' | awk -F ' at ' '{print $2}')"
zenity --question --text "MyScript updated at <b><i>$new_update</i></b>\n \nWould you like to view the log file now?"
if [ $? = 0 ]; then
## display log
zenity --text-info --filename=/home/$USER/.updates.log --width 680 --height 680
fi
fi
## Here is where you can choose what to do if there are no results
else
zenity --text-info "No updates found; exiting..."
fi
Это более или менее тот же тип ответов, что и некоторые, которые вы уже получили на подобные вопросы. :Сначала прочитайте один файл (позиции ), затем проанализируйте другие файлы и извлеките данные.
awk 'NR == FNR { pos[$1]=1; next } $2 in pos { f="desired_pos" $2; print >>f; close(f) }' positions NA*.bam_dp
Если в вопросе указаны два отдельных файла и если positions
включает 142535975, то будет создан desired_pos142535975
со следующим содержимым:
1 142535975 79 NA20507
1 142535975 135 NA20901
Это будет работать, если предположить, что все позиции относятся к хромосоме 1 (или, по крайней мере, к той же той же хромосоме, что и в отдельных файлах ), поскольку нет информации об имени хромосомы, кроме местоположения в файле positions
.