<?xml version='1.0'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:atom="http://www.w3.org/2005/Atom" >
<channel>
	<title><![CDATA[BOL: Related items]]></title>
	<link>https://bioinformaticsonline.com/related/36525?offset=350</link>
	<atom:link href="https://bioinformaticsonline.com/related/36525?offset=350" rel="self" type="application/rss+xml" />
	<description><![CDATA[]]></description>
	
	<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/44503/entire-human-genome-sequencing</guid>
	<pubDate>Tue, 02 Apr 2024 01:19:29 -0500</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/44503/entire-human-genome-sequencing</link>
	<title><![CDATA[Entire Human Genome Sequencing !]]></title>
	<description><![CDATA[<p>Cost-effective whole human genome sequencing has revolutionized the landscape of genetic research and personalized medicine by making comprehensive genetic analysis accessible to a wider population. Through advancements in sequencing technologies, such as next-generation sequencing (NGS), costs have significantly decreased, enabling researchers and healthcare providers to analyze an individual's complete genetic makeup with greater efficiency and affordability. This has profound implications for disease diagnosis, prognosis, and treatment, as it allows for the identification of genetic predispositions and the customization of healthcare interventions based on an individual's unique genetic profile. Moreover, as the cost continues to decline, the potential for population-scale genomic studies and large-scale screening programs becomes increasingly feasible, promising to further enhance our understanding of human genetics and improve healthcare outcomes on a global scale.</p><p>Here are few companies:</p><p>https://mynucleus.com/</p><p>https://myome.com/</p><p>https://nebula.org/whole-genome-sequencing-dna-test/</p>]]></description>
	<dc:creator>LEGE</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/44705/pirna-and-bioinformatics-decoding-the-guardians-of-the-genome</guid>
	<pubDate>Sat, 07 Dec 2024 02:15:11 -0600</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/44705/pirna-and-bioinformatics-decoding-the-guardians-of-the-genome</link>
	<title><![CDATA[piRNA and Bioinformatics: Decoding the Guardians of the Genome]]></title>
	<description><![CDATA[<p>In the symphony of small RNAs, PIWI-interacting RNAs (piRNAs) stand out as the protectors of genomic integrity. These small, non-coding RNAs play critical roles in silencing transposable elements, regulating gene expression, and maintaining germline stability. The rise of bioinformatics has revolutionized our understanding of piRNAs, enabling researchers to decipher their biogenesis, functions, and evolutionary significance.</p><h3>What Are piRNAs?</h3><p>piRNAs are the largest class of small non-coding RNAs, typically 24&ndash;32 nucleotides in length. Unlike microRNAs (miRNAs) and small interfering RNAs (siRNAs), piRNAs do not rely on Dicer enzymes for maturation. Instead, they are processed from long single-stranded precursors and associate with PIWI proteins, a subclass of the Argonaute protein family.</p><p>The primary functions of piRNAs include:</p><ol>
<li><strong>Silencing Transposable Elements</strong>: By targeting transposons, piRNAs prevent genomic instability, particularly in germline cells.</li>
<li><strong>Regulating Gene Expression</strong>: piRNAs modulate gene expression at transcriptional and post-transcriptional levels.</li>
<li><strong>Epigenetic Modulation</strong>: They guide epigenetic modifications, such as DNA methylation, to specific genomic loci.</li>
</ol><h3>Challenges in piRNA Research</h3><p>Studying piRNAs is fraught with challenges, including:</p><ul>
<li><strong>Short Length</strong>: Their small size complicates sequencing and alignment.</li>
<li><strong>Lack of Sequence Conservation</strong>: Unlike miRNAs, piRNAs exhibit limited sequence conservation across species.</li>
<li><strong>Complex Biogenesis</strong>: The intricate pathways of piRNA generation require sophisticated computational tools to unravel.</li>
</ul><h3>Bioinformatics: Illuminating the World of piRNAs</h3><p>Bioinformatics has emerged as an indispensable tool for studying piRNAs, facilitating their discovery, annotation, and functional analysis. Here's how bioinformatics is transforming piRNA research:</p><h4>1. <strong>Identification and Annotation</strong></h4><p>The discovery of piRNAs relies on next-generation sequencing (NGS) data. Bioinformatics tools such as <em>piRNApredictor</em> and <em>Piano</em> identify piRNA clusters and predict potential targets. Databases like piRBase and piRNAdb curate information about known piRNAs, their sequences, and associated proteins.</p><h4>2. <strong>Mapping and Alignment</strong></h4><p>piRNAs often originate from repetitive regions, making their alignment challenging. Tools like Bowtie and STAR handle the unique mapping requirements of piRNAs, enabling accurate identification of piRNA clusters in genomes.</p><h4>3. <strong>Functional Analysis</strong></h4><p>Bioinformatics approaches predict piRNA functions by analyzing their interactions with transposons, genes, and epigenetic marks. Algorithms such as TargetFinder and RIblast explore piRNA-mRNA interactions, shedding light on regulatory networks.</p><h4>4. <strong>Evolutionary Studies</strong></h4><p>piRNAs are evolutionarily diverse, reflecting their roles in species-specific genomic defense. Comparative genomics tools help trace the evolution of piRNA clusters and their associated PIWI proteins across species.</p><h4>5. <strong>Epigenomic Insights</strong></h4><p>piRNAs are key players in epigenetic regulation. Bioinformatics pipelines integrate piRNA data with chromatin immunoprecipitation sequencing (ChIP-seq) and DNA methylation data to uncover their role in shaping the epigenome.</p><h3>Case Study: piRNAs in Germline Integrity</h3><p>One of the hallmark functions of piRNAs is the suppression of transposable elements in the germline. For example, in <em>Drosophila melanogaster</em>, piRNAs target retrotransposons like <em>gypsy</em> and <em>copia</em>. Bioinformatics analyses revealed that these piRNAs guide PIWI proteins to transposon-derived RNA, ensuring genome stability during gametogenesis.</p><h3>Clinical Relevance of piRNAs</h3><p>Recent studies suggest that piRNAs may serve as biomarkers for diseases such as cancer, infertility, and neurodegenerative disorders. For instance:</p><ul>
<li><strong>Cancer</strong>: Dysregulated piRNA expression has been linked to tumorigenesis, making them potential targets for cancer therapies.</li>
<li><strong>Infertility</strong>: Aberrant piRNA pathways are implicated in male infertility due to their role in spermatogenesis.</li>
<li><strong>Neurodegeneration</strong>: piRNAs may regulate neuronal gene expression, highlighting their potential in neurological research.</li>
</ul><h3>Future Directions</h3><p>The integration of bioinformatics with emerging technologies offers exciting opportunities for piRNA research:</p><ul>
<li><strong>Single-Cell Sequencing</strong>: Unveiling cell-specific piRNA expression and function.</li>
<li><strong>Machine Learning</strong>: Predicting piRNA functions and targets with greater accuracy.</li>
<li><strong>CRISPR-Based Tools</strong>: Editing piRNA clusters to explore their roles in vivo.</li>
</ul><h3>Conclusion</h3><p>piRNAs are the unsung guardians of the genome, safeguarding genetic material from transposable elements and contributing to gene regulation and epigenetic programming. Bioinformatics has opened the floodgates of discovery, unraveling the complexities of piRNAs and their myriad roles in biology and disease.</p><p>As we continue to decode the piRNA landscape, these small RNAs promise to unveil big secrets about genome stability, evolution, and human health, cementing their place as a fascinating frontier in molecular biology.</p>]]></description>
	<dc:creator>LEGE</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/44775/genomic-architecture-surrounding-the-fusion-site-of-human-chromosome-2</guid>
	<pubDate>Tue, 04 Mar 2025 12:26:29 -0600</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/44775/genomic-architecture-surrounding-the-fusion-site-of-human-chromosome-2</link>
	<title><![CDATA[Genomic architecture surrounding the fusion site of human chromosome 2]]></title>
	<description><![CDATA[<p>The article <strong>"Genomic Structure and Evolution of the Ancestral Chromosome Fusion Site in 2q13&ndash;2q14.1 and Paralogous Regions on Other Human Chromosomes (https://pmc.ncbi.nlm.nih.gov/articles/PMC187548/)"</strong> explores the genomic architecture surrounding the fusion site of human chromosome 2. This fusion event is a key evolutionary marker distinguishing humans from other great apes, as humans have 46 chromosomes while chimpanzees, gorillas, and orangutans possess 48. The fusion occurred through an end-to-end joining of two ancestral chromosomes, which remain separate in nonhuman primates.</p><h3><strong>Key Findings:</strong></h3><ol>
<li>
<p><strong>Chromosomal Fusion and Its Molecular Signature:</strong></p>
<ul>
<li>The fusion site is located at <strong>2q13&ndash;2q14.1</strong> and is characterized by <strong>degenerate telomeric sequences</strong> appearing interstitially, indicating the historical head-to-head joining of ancestral chromosomes.</li>
<li>Despite being a signature of a past fusion event, these telomeric repeats are no longer functional and have undergone sequence degradation over time.</li>
</ul>
</li>
<li>
<p><strong>Extensive Duplications in the Surrounding Genomic Region:</strong></p>
<ul>
<li>The study identifies <strong>large-scale segmental duplications</strong> flanking the fusion site, with several of these regions duplicated and scattered across multiple chromosomes.</li>
<li>These duplications are predominantly located in <strong>subtelomeric and pericentromeric regions</strong>, suggesting their role in genomic instability and chromosomal evolution.</li>
</ul>
</li>
<li>
<p><strong>Paralogous Regions and Their Evolutionary Relationships:</strong></p>
<ul>
<li>A <strong>168-kilobase (kb) segment</strong> near the fusion site has <strong>98%&ndash;99% sequence identity</strong> with three regions on <strong>chromosome 9 (9pter, 9p11.2, and 9q13)</strong>.</li>
<li>Another <strong>67-kb region distal to the fusion site</strong> shows a high degree of homology to sequences in <strong>chromosome 22qter</strong>.</li>
<li>Additionally, a <strong>100-kb segment</strong> exhibits <strong>96% sequence identity</strong> with a region in <strong>chromosome 2q11.2</strong>.</li>
</ul>
</li>
<li>
<p><strong>Comparative Genomics and Evolutionary Implications:</strong></p>
<ul>
<li>By comparing the duplicated sequences and their arrangement in primates, the researchers traced the order of duplication events leading to their present distribution.</li>
<li>The presence of specific repetitive elements within these duplicated segments serves as <strong>evolutionary markers</strong> that help infer their historical rearrangements.</li>
<li>Some of these <strong>duplicated regions are associated with chromosomal inversion breakpoints</strong>, potentially contributing to evolutionary changes in primates.</li>
<li>Recurrent <strong>structural rearrangements</strong> in these regions have been linked to human chromosomal disorders.</li>
</ul>
</li>
</ol><h3><strong>Conclusions and Implications:</strong></h3><ul>
<li>The findings provide valuable insights into <strong>the structural evolution of human chromosome 2</strong>, which played a crucial role in human speciation.</li>
<li>Understanding these <strong>segmental duplications</strong> and their evolutionary trajectories sheds light on <strong>genomic instability</strong>, which may contribute to <strong>human genetic diseases</strong>.</li>
<li>The study highlights how large-scale chromosomal rearrangements, such as fusion and duplication, have influenced the <strong>evolutionary divergence of humans</strong> from other primates.</li>
</ul><p>This research advances our understanding of <strong>human genome evolution</strong> and offers a foundation for studying the effects of <strong>structural variants in genetic disorders</strong>.</p>]]></description>
	<dc:creator>LEGE</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/45267/when-thousands-of-bacterial-genomes-become-one-giant-map</guid>
	<pubDate>Thu, 27 Aug 2026 10:56:47 -0500</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/45267/when-thousands-of-bacterial-genomes-become-one-giant-map</link>
	<title><![CDATA[When Thousands of Bacterial Genomes Become One Giant Map]]></title>
	<description><![CDATA[<p>Imagine trying to understand a city by studying just one house.</p><p>You might learn a lot about that house&mdash;the rooms, the doors, the furniture&mdash;but you would miss the bigger story: the streets, the neighborhoods, and all the ways the city changes from one place to another.</p><p>Something similar happens when scientists study bacterial genomes one at a time.</p><p>Over the past decade, researchers have collected thousands of bacterial genomes. These genomes contain an enormous amount of information about how bacteria survive, adapt, and evolve. But comparing thousands of individual genomes can quickly become a computational maze.</p><p>That is where PANORAMA enters the story.</p><p>Developed by J&eacute;r&ocirc;me Arnoux and colleagues, PANORAMA is a computational tool designed to explore bacterial pangenomes&mdash;the complete collection of genetic possibilities found across a species or group of related organisms. Instead of looking at every genome as an isolated object, the approach represents their shared and variable genetic features as a graph.</p><p>Think of this graph as a giant subway map.</p><p>Some stations appear on almost every route. These represent genes that are highly conserved. Other stations appear only on certain routes, representing genes that some bacteria possess while others do not. By looking at the entire network, scientists can begin to see not just *what genes exist*, but how they are organized and how biological systems are distributed across populations.</p><p>The researchers put PANORAMA to the test using 941 genomes of Pseudomonas aeruginosa, a bacterium important in human health. They used the tool to investigate biological systems, including bacterial defense mechanisms against viruses known as bacteriophages. They then expanded the analysis to more than 6,000 genomes from four Enterobacteriaceae species.</p><p>The result is more than a faster way to process data.</p><p>PANORAMA allows researchers to ask a bigger question: What can an entire microbial species do, genetically speaking?</p><p>By comparing pangenomes, the researchers could identify systems shared between species as well as distinctive features. They could also find recurring genomic locations where genetic material is inserted&mdash;clues that may reveal common evolutionary processes.</p><p>And this is perhaps the most exciting part of the story.</p><p>Every bacterial genome is like a page in a huge evolutionary book. Until recently, reading thousands of those pages together was difficult. PANORAMA provides a way to turn those pages into a map, allowing scientists to see patterns that might disappear when each genome is studied separately.</p><p>The study, published in PLOS Computational Biology in July 2026, presents PANORAMA as a foundation for large-scale comparative pangenomics. The software and accompanying analysis resources are openly available, giving other researchers the opportunity to explore microbial diversity themselves.</p><p>So the story is not really about one bacterium or one genome.</p><p>It is about changing the way we look at life.</p><p>Instead of asking, &ldquo;What is inside this genome?&rdquo;, scientists can increasingly ask, &ldquo;What is the full genetic landscape of this species&mdash;and how did it become this way?&rdquo;</p><p>And sometimes, when you stop looking at one house and finally see the whole city, the most interesting discoveries are hiding in the streets between them.</p><p>Read more at&nbsp;https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1013856</p>]]></description>
	<dc:creator>LEGE</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/blog/view/45303/the-tree-that-learned-to-read-genomes</guid>
	<pubDate>Fri, 11 Sep 2026 00:51:02 -0500</pubDate>
	<link>https://bioinformaticsonline.com/blog/view/45303/the-tree-that-learned-to-read-genomes</link>
	<title><![CDATA[The Tree That Learned to Read Genomes]]></title>
	<description><![CDATA[<p>Imagine trying to reconstruct a family tree when many family photographs are missing, some names are unclear, and different relatives remember the past differently. This is similar to the challenge scientists face when trying to understand how organisms are related. Their family records are genomes, and the family tree is a phylogenetic tree. With modern sequencing technologies, scientists now have access to thousands of genomes, but comparing them can be difficult, especially when genomes are incomplete or poorly annotated.</p><p>A recent study by Webster and Chapman introduces Buscogeny (https://github.com/Jwebster89/Buscogeny), an open-source bioinformatics pipeline designed to make this process easier. The tool uses BUSCO (Benchmarking Universal Single-Copy Orthologs), which identifies conserved genes that are expected to occur as single copies in particular groups of organisms. These genes act like evolutionary landmarks, allowing researchers to compare genomes and investigate their relationships.</p><p>Buscogeny brings several steps of phylogenomic analysis into one workflow. It identifies BUSCO genes, extracts and aligns their sequences, removes unreliable regions, combines information from multiple genes, and uses the resulting data to construct a phylogenetic tree. It also provides quality-control information, helping researchers identify genomes that may be too incomplete for reliable analysis.</p><p>The authors demonstrate the usefulness of Buscogeny with bacterial and fungal genomes, including Alternaria. This is particularly valuable because fungal genomes can vary greatly in quality and annotation. Ultimately, Buscogeny helps transform massive amounts of genomic data into an understandable evolutionary story. Each DNA sequence becomes a clue, each conserved gene becomes a landmark, and together these clues reveal a picture of how life is connected.</p><p>More at&nbsp;https://link.springer.com/article/10.1007/s10123-025-00752-6?</p>]]></description>
	<dc:creator>BioStar</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/pages/view/21444/a-guide-for-complete-r-beginners-installing-r-packages</guid>
	<pubDate>Tue, 24 Feb 2015 20:23:34 -0600</pubDate>
	<link>https://bioinformaticsonline.com/pages/view/21444/a-guide-for-complete-r-beginners-installing-r-packages</link>
	<title><![CDATA[A guide for complete R beginners :- Installing R packages]]></title>
	<description><![CDATA[<p>Part of the reason R has become so popular is the vast array of packages available at the <a href="http://cran.r-project.org/" target="_blank">cran</a> and <a href="http://www.bioconductor.org/" target="_blank">bioconductor</a> repositories. In the last few years, the number of packages has grown <a href="http://blog.revolutionanalytics.com/2010/09/what-can-other-languages-learn-from-r.html" target="_blank">exponentially</a>!</p><p>This is a short post giving steps on how to actually install R packages. Let&rsquo;s suppose you want to install the <a href="http://had.co.nz/ggplot2/" target="_blank">ggplot2</a> package. Well nothing could be easier. We just fire up an R shell and type:<br /><code><br />&gt; install.packages("ggplot2")</code></p><p>In theory the package should just install, however:</p><ul>
<li>if you are using Linux and don&rsquo;t have root access, this command won&rsquo;t work.</li>
<li>you will be asked to select your local mirror, i.e. which server should you use to download the package.</li>
</ul><h4>Installing packages without root access</h4><p>First, you need to designate a directory where you will store the downloaded packages. On my machine, I use the directory <code>/data/Rpackages/</code> After creating a package directory, to install a package we use the command:<br /><code><br />&gt; install.packages("ggplot2"</code><code>, lib="/data/Rpackages/")<br />&gt; library(ggplot2, lib.loc="/data/Rpackages/")<br /></code></p><p>It&rsquo;s a bit of a pain having to type <code>/data/Rpackages/</code> all the time. To avoid this burden,&nbsp; we create a file <code>.Renviron</code> in our home area, and add the line <code>R_LIBS=/data/Rpackages/</code> to it. This means that whenever you start R, the directory <code>/data/Rpackages/</code> is added to the list of places to look for R packages and so:</p><p><code>&gt; install.packages("ggplot2"</code><code>)<br />&gt; library(ggplot2)</code></p><p>just works!</p><h4>Setting the repository</h4><p>Every time you install a R package, you are asked which repository R should use. To set the repository and avoid having to specify this at every package install, simply:</p><ul>
<li>create a file <code>.Rprofile</code> in your home area.</li>
<li>Add the following piece of code to it:</li>
</ul><p><code><br />cat(".Rprofile: Setting UK repositoryn")<br />r = getOption("repos") # hard code the UK repo for CRAN<br />r["CRAN"] = "http://cran.uk.r-project.org"<br />options(repos = r)<br />rm(r)<br /></code></p><p>I found this tip in a stackoverflow <a href="http://stackoverflow.com/questions/1189759/expert-r-users-whats-in-your-rprofile/1189826#1189826" target="_blank">answer </a>.</p>]]></description>
	<dc:creator>Archana Malhotra</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/file/view/87/linux-cheat-sheet</guid>
	<pubDate>Tue, 09 Jul 2013 17:30:04 -0500</pubDate>
	<link>https://bioinformaticsonline.com/file/view/87/linux-cheat-sheet</link>
	<title><![CDATA[Linux Cheat Sheet]]></title>
	<description><![CDATA[<p><span>In an attempt to find a good Linux reference for bioinformatician and BOL readers, I was unsuccessful at finding a decent one on the Internet. So, we decided to make a cheat sheet for biological programmers.</span></p>]]></description>
	<dc:creator>Jitendra Narayan</dc:creator>
	<enclosure url="https://bioinformaticsonline.com/file/download/87" length="81260" type="application/pdf" />
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/pages/view/9030/linux-ssh-client-commands-for-bioinformatics</guid>
	<pubDate>Thu, 13 Mar 2014 17:16:32 -0500</pubDate>
	<link>https://bioinformaticsonline.com/pages/view/9030/linux-ssh-client-commands-for-bioinformatics</link>
	<title><![CDATA[Linux SSH Client Commands for Bioinformatics]]></title>
	<description><![CDATA[<p>Here come on let play with the following basic command line usage of the ssh client.<br /><br /><strong>1. Check your SSH Client Version:</strong><br /><br />Checking for your SSH client is very sare, but sometimes it may be necessary to identify the SSH client that you are currently running and it&rsquo;s corresponding version number. The SSh client can be identified as follows<br /><br />$ ssh -V<br />OpenSSH_3.9p1, OpenSSL 0.9.7a Feb 19 2013<br /><br />$ ssh -V<br />ssh: SSH Secure Shell 3.2.9.1 (non-commercial version) on i686-pc-linux-gnu<br /><br /><strong>2. Connect and login to remote host:</strong></p><p>The First time when you login to the remotehost from a localhost, it will display the host key not found message and you can give &ldquo;yes&rdquo; to continue. The host key of the remote host will be added under .ssh2/hostkeys directory of your home directory, as shown below.<br /><br />localhost$ ssh -l jit remotehost.example.com<br /><br />jit@remotehost.example.com password:</p><p>remotehost.example.com$</p><p>The Second time when you login to the remote host from the localhost, it will prompt only for the password as the remote host key is already added to the known hosts list of the ssh client.<br /><br />localhost$ ssh -l jit remotehost.example.com<br />jit@remotehost.example.com password: <br />remotehost.example.com$<br /><br />For some reason, if the host key of the remote host is changed after you logged in for the first time, you may get a warning message as shown below. This could be because of various reasons such as 1) Sysadmin upgraded/reinstalled the SSH server on the remote host 2) someone is doing malicious activity etc., The best possible action to take before saying &ldquo;yes&rdquo; to the message below, is to call your sysadmin and identify why you got the host key changed message and verify whether it is the correct host key or not.<br /><br />localhost$ ssh -l jit remotehost.example.com<br /><br />jit @remotehost.example.com's password: <br />remotehost$<br /><br /><strong>4. Debug SSH Client:</strong><br /><br />Sometimes it is necessary to view debug messages to troubleshoot any SSH connection issues. For this purpose, pass -v (lowercase v) option to the ssh as shown below.<br /><br />Example without debug message:<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; localhost$ ssh -l jit remotehost.example.com<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; warning: Connecting to remotehost.example.com failed: No address associated to the name<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; localhost$</p><p>Example with debug message:<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; locaclhost$ ssh -v -l jit remotehost.example.com<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; debug: SshConfig/sshconfig.c:2838/ssh2_parse_config_ext: Metaconfig parsing stopped at line 3.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; debug: SshConfig/sshconfig.c:637/ssh_config_set_param_verbose: Setting variable 'VerboseMode' to 'FALSE'.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; debug: SshConfig/sshconfig.c:3130/ssh_config_read_file_ext: Read 17 params from config file.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; debug: Ssh2/ssh2.c:1707/main: User config file not found, using defaults. (Looked for '/home/jit/.ssh2/ssh2_config')<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; debug: Connecting to remotehost.example.com, port 22... (SOCKS not used)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; warning: Connecting to remotehost.example.com failed: No address associated to</p><p><strong>5. Escape Character: (Toggle SSH session, SSH session statistics etc.)</strong><br /><br />Escape character ~ get&rsquo;s SSH clients attention and the character following the ~ determines the escape command.<br />Toggle SSH Session: When you&rsquo;ve logged on to the remotehost using ssh from the localhost, you may want to come back to the localhost to perform some activity and go back to remote host again. In this case, you don&rsquo;t need to disconnect the ssh session to the remote host. Instead follow the steps below.</p><p>i. Login to remotehost from localhost: localhost$ssh -l jit remotehost<br />ii. Now you are connected to the remotehost: remotehost$<br />iii. To come back to the localhost temporarily, type the escape character ~ and Control-Z. When you type ~ you will not see that immediately on the screen until you press and press enter. So, on the remotehost in a new line enter the following key strokes for the below to work: ~<br /><br />&nbsp;&nbsp;&nbsp; remotehost$ ~^Z<br />&nbsp;&nbsp;&nbsp; [1]+&nbsp; Stopped&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ssh -l jit remotehost<br />&nbsp;&nbsp;&nbsp; localhost$</p><p>iv. Now you are back to the localhost and the ssh remotehost client session runs as a typical unix background job, which you can check as shown below:<br /><br />&nbsp;&nbsp;&nbsp; localhost$ jobs<br />&nbsp;&nbsp;&nbsp; [1]+&nbsp; Stopped&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ssh -l jit remotehost<br /><br />v. You can go back to the remote host ssh without entering the password again by bringing the background ssh remotehost session job to foreground on the localhost<br /><br />&nbsp;&nbsp;&nbsp; localhost$ fg %1<br />&nbsp;&nbsp;&nbsp; ssh -l jit remotehost<br />&nbsp;&nbsp;&nbsp; remotehost$</p>]]></description>
	<dc:creator>Rahul Nayak</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/pages/view/9639/find-certain-filesdocuments-in-linux-os</guid>
	<pubDate>Sun, 06 Apr 2014 23:56:18 -0500</pubDate>
	<link>https://bioinformaticsonline.com/pages/view/9639/find-certain-filesdocuments-in-linux-os</link>
	<title><![CDATA[Find certain files/documents in Linux OS]]></title>
	<description><![CDATA[<p>As bioinformatician I know the fact that we usually handle the large dataset and lost in the huge numbers of files and folders. In order to search the missing file a strong search command is required. The Linux Find Command is one of the most important and much used command in Linux sytems. Find command used to search and locate list of files and directories based on conditions you specify for files that match the arguments. Find can be used in variety of conditions like you can find files by permissions, users, groups, file type, date, size and other possible criteria.<br /><br />Through this article we are sharing our day-to-day Linux find command experience and its usage in the form of examples. In this article we will show you the most used 35 Find Commands examples in Linux. We have divided the section into Five parts from basic to advance usage of find command.</p><p><strong>Part I &ndash; Basic Find Commands for Finding Files with Names</strong><br />1. Find Files Using Name in Current Directory<br /><br />Find all the files whose name is gene.txt in a current working directory.<br /><br /># find . -name gene.txt<br /><br />./gene.txt<br /><br />2. Find Files Under Home Directory<br /><br />Find all the files under /home directory with name gene.txt.<br /><br /># find /home -name gene.txt<br /><br />/home/gene.txt<br /><br />3. Find Files Using Name and Ignoring Case<br /><br />Find all the files whose name is gene.txt and contains both capital and small letters in /home directory.<br /><br /># find /home -iname gene.txt<br /><br />./gene.txt<br />./Gene.txt<br /><br />4. Find Directories Using Name<br /><br />Find all directories whose name is Gene in / directory.<br /><br /># find / -type d -name Gene<br /><br />/Gene<br /><br />5. Find fasta Files Using Name<br /><br />Find all php files whose name is gene.fasta in a current working directory.<br /><br /># find . -type f -name gene.fasta<br /><br />./gene.fasta<br /><br />6. Find all PHP Files in Directory<br /><br />Find all fasta files in a directory.<br /><br /># find . -type f -name "*.fasta"<br /><br />./gene.fasta<br />./cancer.fasta<br />./allgene.fasta<br /><br /><strong>Part II &ndash; Find Files Based on their Permissions</strong><br />7. Find Files With 777 Permissions<br /><br />Find all the files whose permissions are 777.<br /><br /># find . -type f -perm 0777 -print<br /><br />8. Find Files Without 777 Permissions<br /><br />Find all the files without permission 777.<br /><br /># find / -type f ! -perm 777<br /><br />9. Find SGID Files with 644 Permissions<br /><br />Find all the SGID bit files whose permissions set to 644.<br /><br /># find / -perm 2644<br /><br />10. Find Sticky Bit Files with 551 Permissions<br /><br />Find all the Sticky Bit set files whose permission are 551.<br /><br /># find / -perm 1551<br /><br />11. Find SUID Files<br /><br />Find all SUID set files.<br /><br /># find / -perm /u=s<br /><br />12. Find SGID Files<br /><br />Find all SGID set files.<br /><br /># find / -perm /g+s<br /><br />13. Find Read Only Files<br /><br />Find all Read Only files.<br /><br /># find / -perm /u=r<br /><br />14. Find Executable Files<br /><br />Find all Executable files.<br /><br /># find / -perm /a=x<br /><br />15. Find Files with 777 Permissions and Chmod to 644<br /><br />Find all 777 permission files and use chmod command to set permissions to 644.<br /><br /># find / -type f -perm 0777 -print -exec chmod 644 {} \;<br /><br />16. Find Directories with 777 Permissions and Chmod to 755<br /><br />Find all 777 permission directories and use chmod command to set permissions to 755.<br /><br /># find / -type d -perm 777 -print -exec chmod 755 {} \;<br /><br />17. Find and remove single File<br /><br />To find a single file called gene.txt and remove it.<br /><br /># find . -type f -name "gene.txt" -exec rm -f {} \;<br /><br />18. Find and remove Multiple File<br /><br />To find and remove multiple files such as .fa or .gb, then use.<br /><br /># find . -type f -name "*.fa" -exec rm -f {} \;<br /><br />OR<br /><br /># find . -type f -name "*.gb" -exec rm -f {} \;<br /><br />19. Find all Empty Files<br /><br />To file all empty files under certain path.<br /><br /># find /tmp -type f -empty<br /><br />20. Find all Empty Directories<br /><br />To file all empty directories under certain path.<br /><br /># find /tmp -type d -empty<br /><br />21. File all Hidden Files<br /><br />To find all hidden files, use below command.<br /><br /># find /tmp -type f -name ".*"<br /><br /><strong>Part III &ndash; Search Files Based On Owners and Groups</strong><br />22. Find Single File Based on User<br /><br />To find all or single file called gene.txt under / root directory of owner root.<br /><br /># find / -user root -name gene.txt<br /><br />23. Find all Files Based on User<br /><br />To find all files that belongs to user Rahul under /home directory.<br /><br /># find /home -user rahul<br /><br />24. Find all Files Based on Group<br /><br />To find all files that belongs to group Developer under /home directory.<br /><br /># find /home -group developer<br /><br />25. Find Particular Files of User<br /><br />To find all .txt files of user Rahul under /home directory.<br /><br /># find /home -user rahul -iname "*.txt"<br /><br /><strong>Part IV &ndash; Find Files and Directories Based on Date and Time</strong><br />26. Find Last 50 Days Modified Files<br /><br />To find all the files which are modified 50 days back.<br /><br /># find / -mtime 50<br /><br />27. Find Last 50 Days Accessed Files<br /><br />To find all the files which are accessed 50 days back.<br /><br /># find / -atime 50<br /><br />28. Find Last 50-100 Days Modified Files<br /><br />To find all the files which are modified more than 50 days back and less than 100 days.<br /><br /># find / -mtime +50 &ndash;mtime -100<br /><br />29. Find Changed Files in Last 1 Hour<br /><br />To find all the files which are changed in last 1 hour.<br /><br /># find / -cmin -60<br /><br />30. Find Modified Files in Last 1 Hour<br /><br />To find all the files which are modified in last 1 hour.<br /><br /># find / -mmin -60<br /><br />31. Find Accessed Files in Last 1 Hour<br /><br />To find all the files which are accessed in last 1 hour.<br /><br /># find / -amin -60<br /><br /><strong>Part V &ndash; Find Files and Directories Based on Size</strong><br />32. Find 50MB Files<br /><br />To find all 50MB files, use.<br /><br /># find / -size 50M<br /><br />33. Find Size between 50MB &ndash; 100MB<br /><br />To find all the files which are greater than 50MB and less than 100MB.<br /><br /># find / -size +50M -size -100M<br /><br />34. Find and Delete 100MB Files<br /><br />To find all 100MB files and delete them using one single command.<br /><br /># find / -size +100M -exec rm -rf {} \;<br /><br />35. Find Specific Files and Delete<br /><br />Find all .gb files with more than 10MB and delete them using one single command.<br /><br /># find / -type f -name *.gb -size +10M -exec rm {} \;</p>]]></description>
	<dc:creator>Rahul Nayak</dc:creator>
</item>
<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/pages/view/11735/search-shell-command-history</guid>
	<pubDate>Thu, 12 Jun 2014 17:43:34 -0500</pubDate>
	<link>https://bioinformaticsonline.com/pages/view/11735/search-shell-command-history</link>
	<title><![CDATA[Search Shell Command History]]></title>
	<description><![CDATA[<p>We use couple of hundreads of command in daily basis. Most of them are actually repeated several time. The question remain open how do I search old command history under bash shell and modify or reuse it? <br /><br />Now a days almost all modern shell allows you to search command history if enabled by user. Use history command to display the history list with line numbers. Lines listed with with a * have been modified by user.</p><p><br /><strong>Shell history search command</strong><br /><br />Type history at a shell prompt:<br />$ history</p><p>It will display the list of all used commandline history with an serial number.<br /><br />To search particular command, enter:<br />$ history | grep command-name<br />$ history | egrep -i 'scp|ssh|ftp'<br />Emacs Line-Edit Mode Command History Searching<br /><br />To get previous command containing string, hit [CTRL]+[r] followed by search string:<br /><br />(reverse-i-search): <br /><br />To get previous command, hit [CTRL]+[p]. You can also use up arrow key.<br /><br />CTRL-p<br /><br />To get next command, hit [CTRL]+[n]. You can also use down arrow key.<br /><br />CTRL-n<br /><br /></p><p><strong>fc command</strong></p><p>Apart from hostory command there are fc command to extract the command from history. The fc stands for either "find command" or "fix command.</p><p>For example list last 10 command, enter:<br />$ fc -l 10<br />To list commands 130 through 150, enter:<br />$ fc -l 130 150<br />To list all commands since the last command beginning with ssh, enter:<br />$ fc -l ssh<br />You can edit commands 1 through 5 using vi text editor, enter:<br />$ fc -e vi 1 5</p><p><strong>Delete command history</strong><br /><br />The -c option causes the history list to be cleared by deleting all of the entries:<br />$ history -c</p>]]></description>
	<dc:creator>Rahul Nayak</dc:creator>
</item>

</channel>
</rss>