04-19-2010
Quote:
Originally Posted by
malcomex999
It just checks if $0 contains # at the end of the line, if so, it prints the line or else it prints the line and a new line(with the help of printf in formatting).
thanks a lot, now i understand that it uses ternary operator
![Smilie Smilie](https://www.unix.com/images/smilies/smile.gif)
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I'm sure this will be an easy question for you experts out there, but I have been searching the forum and working on this for a couple hours now and can't get it right.
I have a very messy data file that I am trying to tidy up - one of the issues is some records are split into multiple lines: ... (4 Replies)
Discussion started by: tink
4 Replies
2. UNIX for Advanced & Expert Users
Hi all,
I am developing an application in Tcl, inwhich i have to load many modules written in C. I am converting those C modules into shared object(.so) files, and wrap it with my application using SWIG, for which i had the interface file.
Now my question is, i have two different... (2 Replies)
Discussion started by: senthilvnr
2 Replies
3. Shell Programming and Scripting
Hi,
Can anyone know how to use perl to merge the following multi-line information which beginning with "BAM" into one line. For each line need to delete the return and add a space. Please see the red color line.
******Org. Multi-line)
BAM admin 101.203.57.22 ... (3 Replies)
Discussion started by: happyday
3 Replies
4. Shell Programming and Scripting
Hi,
lets assume the following details..
file 1 has below details
abc|1234|xyz
abc1|1234|xyz1
abc2|1234|xyz2
and file 2 has below details
pqr|124|lskd
ebwer|325|dfb
wf|234|sdb
I need out put shown below
abc|1234|xyz
pqr|124|lskd
abc1|1234|xyz1
ebwer|325|dfb
abc2|1234|xyz2... (4 Replies)
Discussion started by: alnhk
4 Replies
5. Shell Programming and Scripting
Hello
I did do a search and the past threads doesn't really solve my issue. (using various awk commands)
I need to combine the output from java -version into 1 line, but I am having difficulties.
When you exec java -version, you get:
java version "1.5.0_06"
Java(TM) 2 Runtime... (5 Replies)
Discussion started by: flagman5
5 Replies
6. Shell Programming and Scripting
Hi all
I have spent half a day trying to create a shell script which reads a configuration file on a line by line basis.
The idea of the file is that each will contain server information, such as IP address and various port numbers. The line could also be blank (The file is user created). Here... (1 Reply)
Discussion started by: haggismn
1 Replies
7. Shell Programming and Scripting
example:
comment Now_TB.table column errac is for error messages
1 - first
2 - second
3 -third ;
in this example I need to be able to grab the comment as first word and ; as the last word and it might span a few lines. I need it to be put all in one line without line breaks so I can... (4 Replies)
Discussion started by: wambli
4 Replies
8. Shell Programming and Scripting
Hi guys,
So i have a input file with several sequences aligned (fasta)
>NC_005930 241 bp
MNMINIFIINNIFDQFIPVKLSIFSLTSVGSIIA
LSWVWINTKTHWAISRSNTP-SLLLNSL
WTLLITNL-NEKTNPWAPWLFSLFLLCFSFNIMSLI-PYTF-SQ
TSHLSFTFGLSLPIWIMVNIAGFKNNWKKKISHLLPQGTPIYLVPVMII
IETISLFIQPLTLGFRLGANLLAGHLLIFLCSCTIWE... (6 Replies)
Discussion started by: andreia
6 Replies
9. Shell Programming and Scripting
Hi all, I'm relatively new to scripting, I can do pretty basic things. I have a daily log file that looks like:
timestamp=2017-06-28-01.01.35.080576;
event status=0;
userid=user1;
authid=user1;
application id=10.10.10.10.11111.12345678901;
application name=GUI;
... (29 Replies)
Discussion started by: dwdnet
29 Replies
10. UNIX for Beginners Questions & Answers
Hi,
Can anyone help me for merge the following multi-line log which beginning with a " and line ending with ": into one line.
*****Original Log*****
087;2008-12-06;084403;"mc;;SYHLR6AP1D\LNZW;AD-703;1;12475;SYHLR6AP1B;1.1.1.1;0000000062;HGPDI:MSISDN=12345678,APNID=1,EQOSID=365;... (3 Replies)
Discussion started by: rajeshlinux2010
3 Replies
LEARN ABOUT LINUX
git-merge-base
GIT-MERGE-BASE(1) Git Manual GIT-MERGE-BASE(1)
NAME
git-merge-base - Find as good common ancestors as possible for a merge
SYNOPSIS
git merge-base [-a|--all] <commit> <commit>...
git merge-base [-a|--all] --octopus <commit>...
git merge-base --is-ancestor <commit> <commit>
git merge-base --independent <commit>...
DESCRIPTION
git merge-base finds best common ancestor(s) between two commits to use in a three-way merge. One common ancestor is better than another
common ancestor if the latter is an ancestor of the former. A common ancestor that does not have any better common ancestor is a best
common ancestor, i.e. a merge base. Note that there can be more than one merge base for a pair of commits.
OPERATION MODE
As the most common special case, specifying only two commits on the command line means computing the merge base between the given two
commits.
More generally, among the two commits to compute the merge base from, one is specified by the first commit argument on the command line;
the other commit is a (possibly hypothetical) commit that is a merge across all the remaining commits on the command line.
As a consequence, the merge base is not necessarily contained in each of the commit arguments if more than two commits are specified. This
is different from git-show-branch(1) when used with the --merge-base option.
--octopus
Compute the best common ancestors of all supplied commits, in preparation for an n-way merge. This mimics the behavior of git
show-branch --merge-base.
--independent
Instead of printing merge bases, print a minimal subset of the supplied commits with the same ancestors. In other words, among the
commits given, list those which cannot be reached from any other. This mimics the behavior of git show-branch --independent.
--is-ancestor
Check if the first <commit> is an ancestor of the second <commit>, and exit with status 0 if true, or with status 1 if not. Errors are
signaled by a non-zero status that is not 1.
OPTIONS
-a, --all
Output all merge bases for the commits, instead of just one.
DISCUSSION
Given two commits A and B, git merge-base A B will output a commit which is reachable from both A and B through the parent relationship.
For example, with this topology:
o---o---o---B
/
---o---1---o---o---o---A
the merge base between A and B is 1.
Given three commits A, B and C, git merge-base A B C will compute the merge base between A and a hypothetical commit M, which is a merge
between B and C. For example, with this topology:
o---o---o---o---C
/
/ o---o---o---B
/ /
---2---1---o---o---o---A
the result of git merge-base A B C is 1. This is because the equivalent topology with a merge commit M between B and C is:
o---o---o---o---o
/
/ o---o---o---o---M
/ /
---2---1---o---o---o---A
and the result of git merge-base A M is 1. Commit 2 is also a common ancestor between A and M, but 1 is a better common ancestor, because 2
is an ancestor of 1. Hence, 2 is not a merge base.
The result of git merge-base --octopus A B C is 2, because 2 is the best common ancestor of all commits.
When the history involves criss-cross merges, there can be more than one best common ancestor for two commits. For example, with this
topology:
---1---o---A
/
X
/
---2---o---o---B
both 1 and 2 are merge-bases of A and B. Neither one is better than the other (both are best merge bases). When the --all option is not
given, it is unspecified which best one is output.
A common idiom to check "fast-forward-ness" between two commits A and B is (or at least used to be) to compute the merge base between A and
B, and check if it is the same as A, in which case, A is an ancestor of B. You will see this idiom used often in older scripts.
A=$(git rev-parse --verify A)
if test "$A" = "$(git merge-base A B)"
then
... A is an ancestor of B ...
fi
In modern git, you can say this in a more direct way:
if git merge-base --is-ancestor A B
then
... A is an ancestor of B ...
fi
instead.
SEE ALSO
git-rev-list(1), git-show-branch(1), git-merge(1)
GIT
Part of the git(1) suite
Git 1.8.5.3 01/14/2014 GIT-MERGE-BASE(1)