Bash to select text and apply it to a selected file in bash
In the bash below I am asking the user for a panel and reading that into bed. Then asking the user for a file and reading that into file1.Is the grep in bold the correct way to apply the selected panel to the file? I am getting a syntax error. Thank you
Code:
FILESDIR=/home/cmccabe/Desktop/ref/validation/val
PANELDIR=/home/cmccabe/Desktop/ref/validation/panels
PS3="please select a panel: "
cd "$PANELDIR"
select bed in $(ls *.txt)
do [ "$panel" != "" ] && break
done
PS3="please select a file to analyze with a panel: "
cd "$FILESDIR"
select file1 in $(ls *.vcf)
do [ "$file1" != "" ] && break
done
printf "FILE is: ${file1} and will be used filtered to ${panel} \n"
read -r -p "Is this correct? [y/N] " response
if [[ $response =~ ^[nN][oO]?$ ]]
then
echo 'please try again' && exit
else
logfile="/home/cmccabe/Desktop/ref/validation/val/process.log"
for f in /home/cmccabe/Desktop/ref/validation/val/$file1 ; do
echo "Start filter creation: $(date) - File: $f"
bname=$(basename $f)
pref=${bname%%_*.vcf}
grep -wFf /home/cmccabe/Desktop/ref/validation/panels/$panel $f >/home/cmccabe/Desktop/ref/validation/filtered/${pref}_filtered.txt
echo "End filder creation: $(date) - File: $f"
done >> "$logfile"
line 32: syntax error: unexpected end of file
Last edited by cmccabe; 09-29-2016 at 05:48 PM..
Reason: fixed typo
I have a file driven menu using the select feature in ksh. I like doing it this way, however I would prefer running a bash. Is there some eqivalent way of doing this in a bash shell?
ie
select file in *.ascii
do
typeset -u REPLY
if ; then... (1 Reply)
Is there any way to implement a drop down menu selection in bash?
This is on CDLinux which is a very minimal live CD and I am using it to install an image onto a hard drive. Part of that process is the timezone selection. There are just too many timezones to attempt to use the "select" command.... (1 Reply)
I am attempting to insert multiple lines of text into a specific place in a text file based on the lines above or below it.
For example, Here is a portion of a zone file.
IN NS ns1.domain.tld.
IN NS ns2.domain.tld.
IN ... (2 Replies)
I have a huge matrix file which looks like this (example matrix):
1 2 3 5
4 5 6 7
7 6 8 9
1 2 4 2
7 6 5 1
3 2 1 9
As one can see, this matrix has 4 columns and 6 rows. But my original matrix has some 3 million rows and 6000 columns.
For example, on this matrix I can define my task as... (2 Replies)
I've a file in linux with following text:
;ip address hostname put-location alt-put-location tftpserver
192.168.1.1 r01-lab1-net /mnt/nas1/fgbu/ /opt/fgbu/devicebackup 192.168.1.254Now I want to read these values and assign them to particular variables... (6 Replies)
hi,
i've bash script thats working...
but now i need to add a line....that prompts for user input....like yes and 1 as complete install....
so here's how it looks...
$ cd 9200 (cd into directory)
$./install (hv to type ./install to run install then ask for)
----do you want to... (4 Replies)
I am using bash to prompt a user for a choice using: where a "y" response opens a menu with available panels that can be used.
while true; do
read -p "Do you want to get coverage of a specific panel?" yn
case $yn in
* ) menu; break;;
* ) exit;;
* ) echo... (6 Replies)
I am trying to select a file in bash and save it to a directory. The below does run but no selected file is saved. Thank you :).
bash
# select file
printf "please select a file to analyze with entered gene or genes \n"
select file in $(cd... (4 Replies)
In the below portion of a bash script the user selects a file from a directory.
select file in $(cd /home/cmccabe/Desktop/NGS/API/5-14-2016/bedtools;ls);do break;done
files in directory
123_base_counts.txt
456_base_counts.txt
789_base_counts.txt
second portion of bash currently (user... (4 Replies)
Hi everyone,
I have a situation in which I have multiple (3 at last count) date columns in a CSV file (, delim), which need to be changed from:
January 1 2017 (note, no comma after day)
to:
YYYY-MM-DD
So far, I am able to convert a date using:
date --date="January 12, 1990" +%Y-%m-%d
... (7 Replies)
Discussion started by: richardsantink
7 Replies
LEARN ABOUT CENTOS
bashbug
BASHBUG(1) General Commands Manual BASHBUG(1)NAME
bashbug - report a bug in bash
SYNOPSIS
bashbug [--version] [--help] [email-address]
DESCRIPTION
bashbug is a shell script to help the user compose and mail bug reports concerning bash in a standard format. bashbug invokes the editor
specified by the environment variable EDITOR on a temporary copy of the bug report format outline. The user must fill in the appropriate
fields and exit the editor. bashbug then mails the completed report to bug-bash@gnu.org, or email-address. If the report cannot be
mailed, it is saved in the file dead.bashbug in the invoking user's home directory.
The bug report format outline consists of several sections. The first section provides information about the machine, operating system,
the bash version, and the compilation environment. The second section should be filled in with a description of the bug. The third sec-
tion should be a description of how to reproduce the bug. The optional fourth section is for a proposed fix. Fixes are encouraged.
ENVIRONMENT
bashbug will utilize the following environment variables if they exist:
EDITOR Specifies the preferred editor. If EDITOR is not set, bashbug defaults to emacs.
HOME Directory in which the failed bug report is saved if the mail fails.
TMPDIR Directory in which to create temporary files and directories.
SEE ALSO bash(1)AUTHORS
Brian Fox, Free Software Foundation
bfox@gnu.org
Chet Ramey, Case Western Reserve University
chet@po.cwru.edu
GNU Bash-4.0 1998 July 30 BASHBUG(1)